Author: jstrachan Date: Tue Feb 22 11:56:24 2011 New Revision: 1073304 URL: http://svn.apache.org/viewvc?rev=1073304&view=rev Log: allow CAMEL-3651 and CAMEL-3563 to work in OSGi blueprint too
Modified: camel/trunk/components/camel-core-osgi/src/main/java/org/apache/camel/core/osgi/OsgiComponentResolver.java Modified: camel/trunk/components/camel-core-osgi/src/main/java/org/apache/camel/core/osgi/OsgiComponentResolver.java URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-core-osgi/src/main/java/org/apache/camel/core/osgi/OsgiComponentResolver.java?rev=1073304&r1=1073303&r2=1073304&view=diff ============================================================================== --- camel/trunk/components/camel-core-osgi/src/main/java/org/apache/camel/core/osgi/OsgiComponentResolver.java (original) +++ camel/trunk/components/camel-core-osgi/src/main/java/org/apache/camel/core/osgi/OsgiComponentResolver.java Tue Feb 22 11:56:24 2011 @@ -19,6 +19,7 @@ package org.apache.camel.core.osgi; import org.apache.camel.CamelContext; import org.apache.camel.Component; import org.apache.camel.spi.ComponentResolver; +import org.apache.camel.util.CamelContextHelper; import org.apache.camel.util.ObjectHelper; import org.osgi.framework.BundleContext; import org.osgi.framework.InvalidSyntaxException; @@ -47,6 +48,13 @@ public class OsgiComponentResolver imple } if (bean instanceof Component) { return (Component)bean; + } else { + // lets use Camel's type conversion mechanism to convert things like CamelContext + // and other types into a valid Component + Component component = CamelContextHelper.convertTo(context, Component.class, bean); + if (component != null) { + return component; + } } // Check in OSGi bundles