[webbeans-commits] Webbeans SVN: r185 - in ri/trunk/webbeans-ri/src: test/java/org/jboss/webbeans/test and 1 other directory.

webbeans-commits at lists.jboss.org webbeans-commits at lists.jboss.org
Mon Oct 27 17:55:36 EDT 2008


Author: pete.muir at jboss.org
Date: 2008-10-27 17:55:36 -0400 (Mon, 27 Oct 2008)
New Revision: 185

Modified:
   ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/ManagerImpl.java
   ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/ResolutionManager.java
   ri/trunk/webbeans-ri/src/test/java/org/jboss/webbeans/test/ResolutionByTypeTest.java
Log:
support resolution of Object.class

Modified: ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/ManagerImpl.java
===================================================================
--- ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/ManagerImpl.java	2008-10-27 19:46:07 UTC (rev 184)
+++ ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/ManagerImpl.java	2008-10-27 21:55:36 UTC (rev 185)
@@ -140,7 +140,7 @@
       return resolutionManager;
    }
 
-   public Set<Bean<?>> getBeans()
+   public Set<Bean<? extends Object>> getBeans()
    {
       return beans;
    }

Modified: ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/ResolutionManager.java
===================================================================
--- ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/ResolutionManager.java	2008-10-27 19:46:07 UTC (rev 184)
+++ ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/ResolutionManager.java	2008-10-27 21:55:36 UTC (rev 185)
@@ -81,8 +81,15 @@
    
    public <T> Set<Bean<T>> get(Injectable<T, ?> key)
    {
-      resolveBeans();
-      return resolvedInjectionPoints.get(key);
+      if (key.getType().equals(Object.class))
+      {
+         return (Set<Bean<T>>) (Set) manager.getBeans();
+      }
+      else
+      {
+         resolveBeans();
+         return resolvedInjectionPoints.get(key);
+      }
    }
    
    public Set<Bean<?>> get(String name)

Modified: ri/trunk/webbeans-ri/src/test/java/org/jboss/webbeans/test/ResolutionByTypeTest.java
===================================================================
--- ri/trunk/webbeans-ri/src/test/java/org/jboss/webbeans/test/ResolutionByTypeTest.java	2008-10-27 19:46:07 UTC (rev 184)
+++ ri/trunk/webbeans-ri/src/test/java/org/jboss/webbeans/test/ResolutionByTypeTest.java	2008-10-27 21:55:36 UTC (rev 185)
@@ -253,9 +253,20 @@
    }
    
    @Test(groups="resolution") @SpecAssertion(section="4.9.2")
-   public void testResolveObject()
+   public void testResolveObject() throws Exception
    {
-      assert false;
+      Bean<Cod> plaiceBean = new BeanImpl<Cod>(new SimpleBeanModel<Cod>(new SimpleAnnotatedType<Cod>(Cod.class), getEmptyAnnotatedType(Cod.class), super.manager), manager);
+      Bean<Salmon> salmonBean = new BeanImpl<Salmon>(new SimpleBeanModel<Salmon>(new SimpleAnnotatedType<Salmon>(Salmon.class), getEmptyAnnotatedType(Salmon.class), super.manager), manager);
+      Bean<Sole> soleBean = new BeanImpl<Sole>(new SimpleBeanModel<Sole>(new SimpleAnnotatedType<Sole>(Sole.class), getEmptyAnnotatedType(Sole.class), super.manager), manager);
+      manager.addBean(plaiceBean);
+      manager.addBean(salmonBean);
+      manager.addBean(soleBean);
+      
+      assert manager.resolveByType(Object.class).size() == 3;
+      assert manager.resolveByType(Object.class).contains(plaiceBean);
+      assert manager.resolveByType(Object.class).contains(salmonBean);
+      assert manager.resolveByType(Object.class).contains(soleBean);
+      
    }
    
    @Test(groups="resolution", expectedExceptions=DefinitionException.class) @SpecAssertion(section="4.9.2.1")




More information about the weld-commits mailing list