Author: arne
Date: Thu Apr 25 09:32:08 2013
New Revision: 1475683

URL: http://svn.apache.org/r1475683
Log:
OWB-814: Implement BeanManager.getInjectionTargetFactory and 
BeanManager.getProducerFactory

Modified:
    
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/container/AbstractBeanManager.java

Modified: 
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/container/AbstractBeanManager.java
URL: 
http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/container/AbstractBeanManager.java?rev=1475683&r1=1475682&r2=1475683&view=diff
==============================================================================
--- 
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/container/AbstractBeanManager.java
 (original)
+++ 
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/container/AbstractBeanManager.java
 Thu Apr 25 09:32:08 2013
@@ -21,10 +21,17 @@ package org.apache.webbeans.container;
 import java.lang.annotation.Annotation;
 
 import javax.enterprise.inject.spi.AnnotatedField;
+import javax.enterprise.inject.spi.AnnotatedMethod;
 import javax.enterprise.inject.spi.AnnotatedParameter;
+import javax.enterprise.inject.spi.AnnotatedType;
+import javax.enterprise.inject.spi.Bean;
 import javax.enterprise.inject.spi.BeanManager;
 import javax.enterprise.inject.spi.InjectionPoint;
 
+import org.apache.webbeans.component.creation.FieldProducerFactory;
+import org.apache.webbeans.component.creation.MethodProducerFactory;
+import org.apache.webbeans.component.spi.InjectionTargetFactory;
+import org.apache.webbeans.component.spi.ProducerFactory;
 import org.apache.webbeans.config.WebBeansContext;
 import org.apache.webbeans.util.AnnotationUtil;
 
@@ -62,4 +69,19 @@ public abstract class AbstractBeanManage
     {
         return 
getWebBeansContext().getInjectionPointFactory().buildInjectionPoint(null, 
parameter);
     }
+
+    public <X> ProducerFactory<X> getProducerFactory(AnnotatedField<? super X> 
field, Bean<X> bean)
+    {
+        return new FieldProducerFactory<X>(field, bean, getWebBeansContext());
+    }
+
+    public <X> ProducerFactory<X> getProducerFactory(AnnotatedMethod<? super 
X> method, Bean<X> bean)
+    {
+        return new MethodProducerFactory<X>(method, bean, 
getWebBeansContext());
+    }
+    
+    public <X> InjectionTargetFactory<X> 
getInjectionTargetFactory(AnnotatedType<X> type)
+    {
+        return new InjectionTargetFactoryImpl<X>(type, getWebBeansContext());
+    }
 }


Reply via email to