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

webbeans-commits at lists.jboss.org webbeans-commits at lists.jboss.org
Thu Jul 2 18:41:54 EDT 2009


Author: pete.muir at jboss.org
Date: 2009-07-02 18:41:54 -0400 (Thu, 02 Jul 2009)
New Revision: 2957

Modified:
   ri/trunk/impl/src/main/java/org/jboss/webbeans/BeanIdStore.java
   ri/trunk/impl/src/main/java/org/jboss/webbeans/BeanManagerImpl.java
Log:
unify addBean, finish BeanIdStore

Modified: ri/trunk/impl/src/main/java/org/jboss/webbeans/BeanIdStore.java
===================================================================
--- ri/trunk/impl/src/main/java/org/jboss/webbeans/BeanIdStore.java	2009-07-02 19:14:00 UTC (rev 2956)
+++ ri/trunk/impl/src/main/java/org/jboss/webbeans/BeanIdStore.java	2009-07-02 22:41:54 UTC (rev 2957)
@@ -103,7 +103,7 @@
       return beans.containsKey(id);
    }
    
-   public Integer get(Bean<?> bean, BeanManagerImpl manager)
+   public Integer put(Bean<?> bean, BeanManagerImpl manager)
    {
       if (beans.inverse().containsKey(bean))
       {

Modified: ri/trunk/impl/src/main/java/org/jboss/webbeans/BeanManagerImpl.java
===================================================================
--- ri/trunk/impl/src/main/java/org/jboss/webbeans/BeanManagerImpl.java	2009-07-02 19:14:00 UTC (rev 2956)
+++ ri/trunk/impl/src/main/java/org/jboss/webbeans/BeanManagerImpl.java	2009-07-02 22:41:54 UTC (rev 2957)
@@ -528,21 +528,32 @@
 
    public void addBean(Bean<?> bean)
    {
-      synchronized (bean)
-      {
          if (beans.contains(bean))
          {
             return;
          }
-         beanResolver.clear();
-         beans.add(bean);
+         if (bean instanceof NewEnterpriseBean)
+         {
+            NewEnterpriseBean<?> newEnterpriseBean = (NewEnterpriseBean<?>) bean;
+            newEnterpriseBeans.put(newEnterpriseBean.getType(), newEnterpriseBean);
+         }
+         else if (bean instanceof DecoratorBean)
+         {
+            decorators.add((DecoratorBean<?>) bean);
+         }
+         if (bean instanceof RIBean)
+         {
+            RIBean<?> riBean = (RIBean<?>) bean;
+            riBeans.put(riBean.getId(), riBean);
+         }
+         getServices().get(BeanIdStore.class).put(bean, this);
          registerBeanNamespace(bean);
          for (BeanManagerImpl childActivity : childActivities)
          {
             childActivity.addBean(bean);
          }
-         return;
-      }
+         this.beans.add(bean);
+         beanResolver.clear();
    }
 
    public <T> Set<Observer<T>> resolveObservers(T event, Annotation... bindings)
@@ -720,22 +731,6 @@
       }
    }
    
-   public void addRIBean(RIBean<?> bean)
-   {
-      if (bean instanceof NewEnterpriseBean)
-      {
-         newEnterpriseBeans.put(bean.getType(), (EnterpriseBean<?>) bean);
-      }
-      if (bean instanceof DecoratorBean)
-      {
-         decorators.add((DecoratorBean<?>) bean);
-      }
-      riBeans.put(bean.getId(), bean);
-      registerBeanNamespace(bean);
-      this.beans.add(bean);
-      beanResolver.clear();
-   }
-   
    protected void registerBeanNamespace(Bean<?> bean)
    {
       if (bean.getName() != null && bean.getName().indexOf('.') > 0)
@@ -1377,4 +1372,12 @@
       return sortedBeans.last();
    }
 
+   /**
+    * @param bean
+    */
+   public void addRIBean(RIBean<?> bean)
+   {
+      addBean(bean);
+   }
+
 }




More information about the weld-commits mailing list