[webbeans-commits] Webbeans SVN: r1132 - ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/bootstrap.

webbeans-commits at lists.jboss.org webbeans-commits at lists.jboss.org
Tue Jan 20 17:30:59 EST 2009


Author: pete.muir at jboss.org
Date: 2009-01-20 17:30:59 -0500 (Tue, 20 Jan 2009)
New Revision: 1132

Modified:
   ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/bootstrap/BeanDeployer.java
Log:
enable more realization tests

Modified: ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/bootstrap/BeanDeployer.java
===================================================================
--- ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/bootstrap/BeanDeployer.java	2009-01-20 21:13:55 UTC (rev 1131)
+++ ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/bootstrap/BeanDeployer.java	2009-01-20 22:30:59 UTC (rev 1132)
@@ -8,6 +8,7 @@
 import java.util.HashSet;
 import java.util.Set;
 
+import javax.webbeans.BindingType;
 import javax.webbeans.Fires;
 import javax.webbeans.Initializer;
 import javax.webbeans.Observes;
@@ -115,18 +116,20 @@
       
       if (annotatedClass.isAnnotationPresent(Realizes.class))
       {
-         registerProducerMethods(bean, annotatedClass.getSuperclass(), bean.getBindings());
-         registerProducerFields(bean, annotatedClass.getSuperclass(), bean.getBindings());
+         Set<Annotation> extraAnnotations = new HashSet<Annotation>();
+         extraAnnotations.addAll(annotatedClass.getDeclaredMetaAnnotations(BindingType.class));
+         registerProducerMethods(bean, annotatedClass.getSuperclass(), extraAnnotations);
+         registerProducerFields(bean, annotatedClass.getSuperclass(), extraAnnotations);
       }
       
       log.info("Web Bean: " + bean);
    }
    
-   private void registerProducerMethods(AbstractClassBean<?> declaringBean, AnnotatedClass<?> annotatedClass, Set<Annotation> extraBindings)
+   private void registerProducerMethods(AbstractClassBean<?> declaringBean, AnnotatedClass<?> annotatedClass, Set<Annotation> extraAnnotations)
    {
       for (AnnotatedMethod<?> method : annotatedClass.getDeclaredAnnotatedMethods(Produces.class))
       {
-         ProducerMethodBean<?> bean = ProducerMethodBean.of(method.wrap(extraBindings), declaringBean, manager);
+         ProducerMethodBean<?> bean = ProducerMethodBean.of(method.wrap(extraAnnotations), declaringBean, manager);
          beans.add(bean);
          manager.getResolver().addInjectionPoints(bean.getAnnotatedInjectionPoints());
          registerFacades(bean.getAnnotatedInjectionPoints());
@@ -134,11 +137,11 @@
       }
    }
    
-   private void registerProducerFields(AbstractClassBean<?> declaringBean, AnnotatedClass<?> annotatedClass, Set<Annotation> extraBindings)
+   private void registerProducerFields(AbstractClassBean<?> declaringBean, AnnotatedClass<?> annotatedClass, Set<Annotation> extraAnnotations)
    {
       for (AnnotatedField<?> field : annotatedClass.getDeclaredAnnotatedFields(Produces.class))
       {
-         ProducerFieldBean<?> bean = ProducerFieldBean.of(field.wrap(extraBindings), declaringBean, manager);
+         ProducerFieldBean<?> bean = ProducerFieldBean.of(field.wrap(extraAnnotations), declaringBean, manager);
          beans.add(bean);
          log.info("Web Bean: " + bean);
       }




More information about the weld-commits mailing list