Author: jstrachan Date: Thu Sep 27 10:12:12 2012 New Revision: 1390923 URL: http://svn.apache.org/viewvc?rev=1390923&view=rev Log: avoid using a weld class directly (used by accident, bad James! :)
Modified: camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/internal/CamelContextConfig.java Modified: camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/internal/CamelContextConfig.java URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/internal/CamelContextConfig.java?rev=1390923&r1=1390922&r2=1390923&view=diff ============================================================================== --- camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/internal/CamelContextConfig.java (original) +++ camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/internal/CamelContextConfig.java Thu Sep 27 10:12:12 2012 @@ -16,8 +16,10 @@ */ package org.apache.camel.cdi.internal; +import java.lang.reflect.Type; import java.util.ArrayList; import java.util.List; +import java.util.Set; import javax.enterprise.context.spi.CreationalContext; import javax.enterprise.inject.spi.Bean; @@ -28,7 +30,6 @@ import org.apache.camel.RuntimeCamelExce import org.apache.camel.cdi.CdiCamelContext; import org.apache.camel.model.RouteContainer; import org.apache.camel.util.ObjectHelper; -import org.jboss.weld.bean.ProducerMethod; /** * Configuration options to be applied to a {@link org.apache.camel.CamelContext} by a {@link CamelContextBean} @@ -44,9 +45,13 @@ public class CamelContextConfig { for (Bean<?> bean : routeBuilderBeans) { CreationalContext<?> createContext = beanManager.createCreationalContext(bean); Class<?> beanClass = bean.getBeanClass(); - if (bean instanceof ProducerMethod) { - ProducerMethod producerMethod = (ProducerMethod) bean; - beanClass = producerMethod.getType(); + Set<Type> types = bean.getTypes(); + for (Type type : types) { + // lets use the first type for producer methods + if (type instanceof Class<?>) { + beanClass = (Class<?>) type; + break; + } } Object reference = beanManager.getReference(bean, beanClass, createContext); ObjectHelper.notNull(reference, "Could not instantiate bean of type " + beanClass.getName() + " for " + bean);