[webbeans-commits] Webbeans SVN: r2206 - tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/definition/deployment/broken/typevariable and 1 other directories.
webbeans-commits at lists.jboss.org
webbeans-commits at lists.jboss.org
Wed Mar 25 20:42:15 EDT 2009
Author: pete.muir at jboss.org
Date: 2009-03-25 20:42:15 -0400 (Wed, 25 Mar 2009)
New Revision: 2206
Modified:
ri/trunk/impl/src/main/java/org/jboss/webbeans/BeanValidator.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/definition/deployment/broken/typevariable/BeanWithInjectedField_Broken.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/definition/deployment/broken/typevariable/ParameterizedTypeInjectionTest.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/definition/deployment/broken/wildcard/WildcardTypeInjectionTest.java
Log:
WBRI-169
Modified: ri/trunk/impl/src/main/java/org/jboss/webbeans/BeanValidator.java
===================================================================
--- ri/trunk/impl/src/main/java/org/jboss/webbeans/BeanValidator.java 2009-03-25 20:42:35 UTC (rev 2205)
+++ ri/trunk/impl/src/main/java/org/jboss/webbeans/BeanValidator.java 2009-03-26 00:42:15 UTC (rev 2206)
@@ -18,6 +18,7 @@
import java.lang.annotation.Annotation;
import java.lang.reflect.ParameterizedType;
+import java.lang.reflect.Type;
import java.lang.reflect.TypeVariable;
import java.lang.reflect.WildcardType;
import java.util.ArrayList;
@@ -86,6 +87,21 @@
{
throw new DefinitionException("The injection point " + injectionPoint + " is annotated with @New which cannot be combined with other binding types");
}
+ if (injectionPoint.getType() instanceof ParameterizedType)
+ {
+ ParameterizedType parameterizedType = (ParameterizedType) injectionPoint.getType();
+ for (Type type : parameterizedType.getActualTypeArguments())
+ {
+ if (type instanceof TypeVariable)
+ {
+ throw new DefinitionException("Injection point cannot have a type variable type parameter " + injectionPoint);
+ }
+ if (type instanceof WildcardType)
+ {
+ throw new DefinitionException("Injection point cannot have a wildcard type parameter " + injectionPoint);
+ }
+ }
+ }
checkFacadeInjectionPoint(injectionPoint, Obtains.class, Instance.class);
checkFacadeInjectionPoint(injectionPoint, Fires.class, Event.class);
Annotation[] bindings = injectionPoint.getBindings().toArray(new Annotation[0]);
Modified: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/definition/deployment/broken/typevariable/BeanWithInjectedField_Broken.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/definition/deployment/broken/typevariable/BeanWithInjectedField_Broken.java 2009-03-25 20:42:35 UTC (rev 2205)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/definition/deployment/broken/typevariable/BeanWithInjectedField_Broken.java 2009-03-26 00:42:15 UTC (rev 2206)
@@ -1,9 +1,13 @@
package org.jboss.jsr299.tck.tests.definition.deployment.broken.typevariable;
-import javax.inject.Current;
+import javax.inject.Initializer;
class BeanWithInjectedField_Broken
{
- @Current
- private Farmer_Broken injectedFarmer;
+
+ @Initializer
+ public <T> void initialize(Farmer_Broken<T> farmer)
+ {
+
+ }
}
\ No newline at end of file
Modified: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/definition/deployment/broken/typevariable/ParameterizedTypeInjectionTest.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/definition/deployment/broken/typevariable/ParameterizedTypeInjectionTest.java 2009-03-25 20:42:35 UTC (rev 2205)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/definition/deployment/broken/typevariable/ParameterizedTypeInjectionTest.java 2009-03-26 00:42:15 UTC (rev 2206)
@@ -16,7 +16,7 @@
@ExpectedDeploymentException(DefinitionException.class)
public class ParameterizedTypeInjectionTest extends AbstractJSR299Test
{
- @Test(groups = {"ri-broken"})
+ @Test
@SpecAssertion(section = "2.2", id = "c")
public void testInjectionPointIsNotParameterizedTypeWithTypeVariable()
{
Modified: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/definition/deployment/broken/wildcard/WildcardTypeInjectionTest.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/definition/deployment/broken/wildcard/WildcardTypeInjectionTest.java 2009-03-25 20:42:35 UTC (rev 2205)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/definition/deployment/broken/wildcard/WildcardTypeInjectionTest.java 2009-03-26 00:42:15 UTC (rev 2206)
@@ -16,7 +16,7 @@
@ExpectedDeploymentException(DefinitionException.class)
public class WildcardTypeInjectionTest extends AbstractJSR299Test
{
- @Test(groups = {"ri-broken"})
+ @Test
@SpecAssertion(section = "2.2", id = "d")
public void testInjectionPointIsNotParameterizedTypeWithWildcardVariable()
{
More information about the weld-commits
mailing list