Author: jstrachan Date: Tue Feb 22 11:55:49 2011 New Revision: 1073303 URL: http://svn.apache.org/viewvc?rev=1073303&view=rev Log: allow CAMEL-3651 and CAMEL-3563 to work in OSGi blueprint too
Modified: camel/trunk/components/camel-blueprint/src/main/java/org/apache/camel/blueprint/BlueprintComponentResolver.java Modified: camel/trunk/components/camel-blueprint/src/main/java/org/apache/camel/blueprint/BlueprintComponentResolver.java URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-blueprint/src/main/java/org/apache/camel/blueprint/BlueprintComponentResolver.java?rev=1073303&r1=1073302&r2=1073303&view=diff ============================================================================== --- camel/trunk/components/camel-blueprint/src/main/java/org/apache/camel/blueprint/BlueprintComponentResolver.java (original) +++ camel/trunk/components/camel-blueprint/src/main/java/org/apache/camel/blueprint/BlueprintComponentResolver.java Tue Feb 22 11:55:49 2011 @@ -20,6 +20,7 @@ import org.apache.camel.CamelContext; import org.apache.camel.Component; import org.apache.camel.core.osgi.OsgiComponentResolver; import org.apache.camel.spi.ComponentResolver; +import org.apache.camel.util.CamelContextHelper; import org.osgi.framework.BundleContext; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -41,6 +42,13 @@ public class BlueprintComponentResolver LOG.debug("Found component: " + name + " in registry: " + bean); } 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; + } } } catch (Exception e) { LOG.debug("Ignored error looking up bean: " + name + ". Error: " + e);