Author: pete.muir(a)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")
Show replies by date