Author: pete.muir(a)jboss.org
Date: 2009-08-02 18:39:41 -0400 (Sun, 02 Aug 2009)
New Revision: 3391
Added:
ri/trunk/impl/src/main/java/org/jboss/webbeans/util/collections/Arrays2.java
Modified:
ri/trunk/api/src/main/java/javax/enterprise/inject/New.java
ri/trunk/impl/src/main/java/org/jboss/webbeans/metadata/cache/AnnotationModel.java
ri/trunk/impl/src/main/java/org/jboss/webbeans/metadata/cache/BindingTypeModel.java
ri/trunk/impl/src/main/java/org/jboss/webbeans/metadata/cache/ScopeModel.java
ri/trunk/impl/src/main/java/org/jboss/webbeans/metadata/cache/StereotypeModel.java
ri/trunk/tests/src/test/java/org/jboss/webbeans/test/unit/lookup/Special.java
ri/trunk/tests/src/test/java/org/jboss/webbeans/test/unit/lookup/wbri279/IntFactory.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/passivating/broken11/British.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/definition/binding/Synchronous.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/event/Role.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/event/bindingTypes/EventBindingTypesTest.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/event/bindingTypes/Wild.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/event/fires/Role.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/event/observer/Role.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/event/observer/resolve/Role.java
Log:
WBRI-316
Modified: ri/trunk/api/src/main/java/javax/enterprise/inject/New.java
===================================================================
--- ri/trunk/api/src/main/java/javax/enterprise/inject/New.java 2009-08-02 09:48:11 UTC
(rev 3390)
+++ ri/trunk/api/src/main/java/javax/enterprise/inject/New.java 2009-08-02 22:39:41 UTC
(rev 3391)
@@ -18,7 +18,9 @@
package javax.enterprise.inject;
import static java.lang.annotation.ElementType.FIELD;
+import static java.lang.annotation.ElementType.METHOD;
import static java.lang.annotation.ElementType.PARAMETER;
+import static java.lang.annotation.ElementType.TYPE;
import static java.lang.annotation.RetentionPolicy.RUNTIME;
import java.lang.annotation.Documented;
@@ -32,7 +34,7 @@
* @author Pete Muir
*/
-@Target( { FIELD, PARAMETER })
+@Target( { FIELD, PARAMETER, METHOD, TYPE })
@Retention(RUNTIME)
@Documented
@BindingType
Modified:
ri/trunk/impl/src/main/java/org/jboss/webbeans/metadata/cache/AnnotationModel.java
===================================================================
---
ri/trunk/impl/src/main/java/org/jboss/webbeans/metadata/cache/AnnotationModel.java 2009-08-02
09:48:11 UTC (rev 3390)
+++
ri/trunk/impl/src/main/java/org/jboss/webbeans/metadata/cache/AnnotationModel.java 2009-08-02
22:39:41 UTC (rev 3391)
@@ -17,9 +17,13 @@
package org.jboss.webbeans.metadata.cache;
import java.lang.annotation.Annotation;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
import org.jboss.webbeans.DefinitionException;
import org.jboss.webbeans.introspector.WBAnnotation;
+import org.jboss.webbeans.log.Log;
+import org.jboss.webbeans.log.Logging;
import org.jboss.webbeans.resources.ClassTransformer;
/**
@@ -29,10 +33,12 @@
*/
public abstract class AnnotationModel<T extends Annotation>
{
+ private static final Log log = Logging.getLog(AnnotationModel.class);
+
// The underlying annotation
private WBAnnotation<T> annotatedAnnotation;
// Is the data valid?
- private boolean valid;
+ protected boolean valid;
/**
* Constructor
@@ -70,7 +76,17 @@
*/
protected void initValid()
{
- this.valid = annotatedAnnotation.isAnnotationPresent(getMetaAnnotation());
+ this.valid = true;
+ if (!annotatedAnnotation.isAnnotationPresent(getMetaAnnotation()))
+ {
+ this.valid = false;
+ }
+ if (annotatedAnnotation.isAnnotationPresent(Retention.class) &&
!annotatedAnnotation.getAnnotation(Retention.class).value().equals(RetentionPolicy.RUNTIME))
+ {
+ this.valid = false;
+ log.debug("#0 is missing @Retention(RUNTIME)", annotatedAnnotation);
+ }
+
}
/**
Modified:
ri/trunk/impl/src/main/java/org/jboss/webbeans/metadata/cache/BindingTypeModel.java
===================================================================
---
ri/trunk/impl/src/main/java/org/jboss/webbeans/metadata/cache/BindingTypeModel.java 2009-08-02
09:48:11 UTC (rev 3390)
+++
ri/trunk/impl/src/main/java/org/jboss/webbeans/metadata/cache/BindingTypeModel.java 2009-08-02
22:39:41 UTC (rev 3391)
@@ -16,7 +16,13 @@
*/
package org.jboss.webbeans.metadata.cache;
+import static java.lang.annotation.ElementType.FIELD;
+import static java.lang.annotation.ElementType.METHOD;
+import static java.lang.annotation.ElementType.PARAMETER;
+import static java.lang.annotation.ElementType.TYPE;
+
import java.lang.annotation.Annotation;
+import java.lang.annotation.Target;
import java.lang.reflect.InvocationTargetException;
import java.util.Set;
@@ -25,8 +31,11 @@
import org.jboss.webbeans.DefinitionException;
import org.jboss.webbeans.introspector.WBMethod;
+import org.jboss.webbeans.log.Log;
+import org.jboss.webbeans.log.Logging;
import org.jboss.webbeans.resources.ClassTransformer;
import org.jboss.webbeans.util.Reflections;
+import org.jboss.webbeans.util.collections.Arrays2;
/**
*
@@ -37,8 +46,11 @@
*/
public class BindingTypeModel<T extends Annotation> extends
AnnotationModel<T>
{
+ private static final Log log = Logging.getLog(BindingTypeModel.class);
+
// The non-binding types
private Set<WBMethod<?>> nonBindingTypes;
+
/**
* Constructor
@@ -60,6 +72,22 @@
initNonBindingTypes();
checkArrayAndAnnotationValuedMembers();
}
+
+ @Override
+ protected void initValid()
+ {
+ super.initValid();
+ if (!getAnnotatedAnnotation().isAnnotationPresent(Target.class))
+ {
+ this.valid = false;
+ log.debug("#0 is missing @Target annotation.",
getAnnotatedAnnotation());
+ }
+ else if
(!Arrays2.unorderedEquals(getAnnotatedAnnotation().getAnnotation(Target.class).value(),
METHOD, FIELD, PARAMETER, TYPE))
+ {
+ this.valid = false;
+ log.debug("#0 is has incorrect @Target annotation. Should be
@Target(METHOD, FIELD, TYPE, PARAMETER).", getAnnotatedAnnotation());
+ }
+ }
/**
* Validates the members
Modified: ri/trunk/impl/src/main/java/org/jboss/webbeans/metadata/cache/ScopeModel.java
===================================================================
---
ri/trunk/impl/src/main/java/org/jboss/webbeans/metadata/cache/ScopeModel.java 2009-08-02
09:48:11 UTC (rev 3390)
+++
ri/trunk/impl/src/main/java/org/jboss/webbeans/metadata/cache/ScopeModel.java 2009-08-02
22:39:41 UTC (rev 3391)
@@ -16,11 +16,19 @@
*/
package org.jboss.webbeans.metadata.cache;
+import static java.lang.annotation.ElementType.FIELD;
+import static java.lang.annotation.ElementType.METHOD;
+import static java.lang.annotation.ElementType.TYPE;
+
import java.lang.annotation.Annotation;
+import java.lang.annotation.Target;
import javax.enterprise.context.ScopeType;
+import org.jboss.webbeans.log.Log;
+import org.jboss.webbeans.log.Logging;
import org.jboss.webbeans.resources.ClassTransformer;
+import org.jboss.webbeans.util.collections.Arrays2;
/**
*
@@ -31,6 +39,8 @@
*/
public class ScopeModel<T extends Annotation> extends AnnotationModel<T>
{
+ private static final Log log = Logging.getLog(ScopeModel.class);
+
/**
* Constrctor
*
@@ -40,6 +50,22 @@
{
super(scope, classTransformer);
}
+
+ @Override
+ protected void initValid()
+ {
+ super.initValid();
+ if (!getAnnotatedAnnotation().isAnnotationPresent(Target.class))
+ {
+ this.valid = false;
+ log.debug("#0 is missing @Target annotation.",
getAnnotatedAnnotation());
+ }
+ else if
(!Arrays2.unorderedEquals(getAnnotatedAnnotation().getAnnotation(Target.class).value(),
METHOD, FIELD, TYPE))
+ {
+ this.valid = false;
+ log.debug("#0 is has incorrect @Target annotation. Should be
@Target(METHOD, FIELD, TYPE).", getAnnotatedAnnotation());
+ }
+ }
/**
* Indicates if the scope is "normal"
Modified:
ri/trunk/impl/src/main/java/org/jboss/webbeans/metadata/cache/StereotypeModel.java
===================================================================
---
ri/trunk/impl/src/main/java/org/jboss/webbeans/metadata/cache/StereotypeModel.java 2009-08-02
09:48:11 UTC (rev 3390)
+++
ri/trunk/impl/src/main/java/org/jboss/webbeans/metadata/cache/StereotypeModel.java 2009-08-02
22:39:41 UTC (rev 3391)
@@ -16,7 +16,12 @@
*/
package org.jboss.webbeans.metadata.cache;
+import static java.lang.annotation.ElementType.FIELD;
+import static java.lang.annotation.ElementType.METHOD;
+import static java.lang.annotation.ElementType.TYPE;
+
import java.lang.annotation.Annotation;
+import java.lang.annotation.Target;
import java.util.Set;
import javax.enterprise.context.ScopeType;
@@ -27,7 +32,10 @@
import javax.interceptor.InterceptorBindingType;
import org.jboss.webbeans.DefinitionException;
+import org.jboss.webbeans.log.Log;
+import org.jboss.webbeans.log.Logging;
import org.jboss.webbeans.resources.ClassTransformer;
+import org.jboss.webbeans.util.collections.Arrays2;
/**
* A meta model for a stereotype, allows us to cache a stereotype and to
@@ -38,6 +46,8 @@
*/
public class StereotypeModel<T extends Annotation> extends
AnnotationModel<T>
{
+ private static final Log log = Logging.getLog(StereotypeModel.class);
+
// Is the stereotype a policy
private boolean policy;
// The default scope type
@@ -123,6 +133,28 @@
this.policy = true;
}
}
+
+ @Override
+ protected void initValid()
+ {
+ super.initValid();
+ if (!getAnnotatedAnnotation().isAnnotationPresent(Target.class))
+ {
+ this.valid = false;
+ log.debug("#0 is missing @Target annotation.",
getAnnotatedAnnotation());
+ }
+ else if (!(
+
Arrays2.unorderedEquals(getAnnotatedAnnotation().getAnnotation(Target.class).value(),
METHOD, FIELD, TYPE) ||
+
Arrays2.unorderedEquals(getAnnotatedAnnotation().getAnnotation(Target.class).value(),
TYPE) ||
+
Arrays2.unorderedEquals(getAnnotatedAnnotation().getAnnotation(Target.class).value(),
METHOD) ||
+
Arrays2.unorderedEquals(getAnnotatedAnnotation().getAnnotation(Target.class).value(),
FIELD) ||
+
Arrays2.unorderedEquals(getAnnotatedAnnotation().getAnnotation(Target.class).value(),
METHOD, TYPE)
+ ))
+ {
+ this.valid = false;
+ log.debug("#0 is has incorrect @Target annotation. Should be
@Target(METHOD, FIELD, TYPE, PARAMETER), @Target(METHOD, TYPE), @Target(METHOD),
@Target(TYPE) or @Target(FIELD).", getAnnotatedAnnotation());
+ }
+ }
Added: ri/trunk/impl/src/main/java/org/jboss/webbeans/util/collections/Arrays2.java
===================================================================
--- ri/trunk/impl/src/main/java/org/jboss/webbeans/util/collections/Arrays2.java
(rev 0)
+++
ri/trunk/impl/src/main/java/org/jboss/webbeans/util/collections/Arrays2.java 2009-08-02
22:39:41 UTC (rev 3391)
@@ -0,0 +1,40 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2008, Red Hat Middleware LLC, and individual contributors
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
http://www.apache.org/licenses/LICENSE-2.0
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.jboss.webbeans.util.collections;
+
+import java.util.Arrays;
+
+/**
+ * @author pmuir
+ *
+ */
+public class Arrays2
+{
+
+ private Arrays2() {}
+
+ public static final boolean containsAll(Object[] array, Object... values)
+ {
+ return Arrays.asList(array).containsAll(Arrays.asList(values));
+ }
+
+ public static final boolean unorderedEquals(Object[] array, Object... values)
+ {
+ return containsAll(array, values) && array.length == values.length;
+ }
+
+}
Property changes on:
ri/trunk/impl/src/main/java/org/jboss/webbeans/util/collections/Arrays2.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Modified: ri/trunk/tests/src/test/java/org/jboss/webbeans/test/unit/lookup/Special.java
===================================================================
---
ri/trunk/tests/src/test/java/org/jboss/webbeans/test/unit/lookup/Special.java 2009-08-02
09:48:11 UTC (rev 3390)
+++
ri/trunk/tests/src/test/java/org/jboss/webbeans/test/unit/lookup/Special.java 2009-08-02
22:39:41 UTC (rev 3391)
@@ -1,6 +1,10 @@
package org.jboss.webbeans.test.unit.lookup;
-import java.lang.annotation.ElementType;
+import static java.lang.annotation.ElementType.FIELD;
+import static java.lang.annotation.ElementType.METHOD;
+import static java.lang.annotation.ElementType.PARAMETER;
+import static java.lang.annotation.ElementType.TYPE;
+
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
@@ -9,7 +13,7 @@
@BindingType
@Retention(RetentionPolicy.RUNTIME)
-(a)Target({ElementType.FIELD, ElementType.METHOD, ElementType.TYPE})
+@Target({FIELD, METHOD, TYPE, PARAMETER})
public @interface Special
{
Modified:
ri/trunk/tests/src/test/java/org/jboss/webbeans/test/unit/lookup/wbri279/IntFactory.java
===================================================================
---
ri/trunk/tests/src/test/java/org/jboss/webbeans/test/unit/lookup/wbri279/IntFactory.java 2009-08-02
09:48:11 UTC (rev 3390)
+++
ri/trunk/tests/src/test/java/org/jboss/webbeans/test/unit/lookup/wbri279/IntFactory.java 2009-08-02
22:39:41 UTC (rev 3391)
@@ -2,6 +2,7 @@
import static java.lang.annotation.ElementType.FIELD;
import static java.lang.annotation.ElementType.METHOD;
+import static java.lang.annotation.ElementType.PARAMETER;
import static java.lang.annotation.ElementType.TYPE;
import java.lang.annotation.Retention;
@@ -11,7 +12,7 @@
import javax.enterprise.inject.BindingType;
@Retention(RetentionPolicy.RUNTIME)
-@Target( { TYPE, FIELD, METHOD })
+@Target( { TYPE, FIELD, METHOD, PARAMETER })
@BindingType
public @interface IntFactory
{
Modified:
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/passivating/broken11/British.java
===================================================================
---
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/passivating/broken11/British.java 2009-08-02
09:48:11 UTC (rev 3390)
+++
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/passivating/broken11/British.java 2009-08-02
22:39:41 UTC (rev 3391)
@@ -2,6 +2,7 @@
import static java.lang.annotation.ElementType.FIELD;
import static java.lang.annotation.ElementType.METHOD;
+import static java.lang.annotation.ElementType.PARAMETER;
import static java.lang.annotation.ElementType.TYPE;
import static java.lang.annotation.RetentionPolicy.RUNTIME;
@@ -12,7 +13,7 @@
@BindingType
-@Target({TYPE, METHOD, FIELD})
+@Target( { FIELD, PARAMETER, METHOD, TYPE })
@Retention(RUNTIME)
@interface British
{
Modified:
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/definition/binding/Synchronous.java
===================================================================
---
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/definition/binding/Synchronous.java 2009-08-02
09:48:11 UTC (rev 3390)
+++
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/definition/binding/Synchronous.java 2009-08-02
22:39:41 UTC (rev 3391)
@@ -1,5 +1,6 @@
package org.jboss.jsr299.tck.tests.definition.binding;
+import static java.lang.annotation.ElementType.FIELD;
import static java.lang.annotation.ElementType.METHOD;
import static java.lang.annotation.ElementType.PARAMETER;
import static java.lang.annotation.ElementType.TYPE;
@@ -11,7 +12,7 @@
import javax.enterprise.inject.BindingType;
-@Target( { TYPE, METHOD, PARAMETER })
+@Target( { FIELD, PARAMETER, METHOD, TYPE })
@Retention(RUNTIME)
@Documented
@BindingType
Modified: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/event/Role.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/event/Role.java 2009-08-02
09:48:11 UTC (rev 3390)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/event/Role.java 2009-08-02
22:39:41 UTC (rev 3391)
@@ -1,7 +1,9 @@
package org.jboss.jsr299.tck.tests.event;
import static java.lang.annotation.ElementType.FIELD;
+import static java.lang.annotation.ElementType.METHOD;
import static java.lang.annotation.ElementType.PARAMETER;
+import static java.lang.annotation.ElementType.TYPE;
import static java.lang.annotation.RetentionPolicy.RUNTIME;
import java.lang.annotation.Retention;
@@ -9,7 +11,7 @@
import javax.enterprise.inject.BindingType;
-@Target( { FIELD, PARAMETER })
+@Target( { FIELD, PARAMETER, METHOD, TYPE })
@Retention(RUNTIME)
@BindingType
@interface Role
Modified:
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/event/bindingTypes/EventBindingTypesTest.java
===================================================================
---
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/event/bindingTypes/EventBindingTypesTest.java 2009-08-02
09:48:11 UTC (rev 3390)
+++
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/event/bindingTypes/EventBindingTypesTest.java 2009-08-02
22:39:41 UTC (rev 3391)
@@ -5,10 +5,10 @@
import javax.enterprise.inject.TypeLiteral;
import javax.enterprise.inject.spi.Bean;
+import org.jboss.jsr299.tck.AbstractJSR299Test;
+import org.jboss.jsr299.tck.literals.AnyLiteral;
import org.jboss.test.audit.annotations.SpecAssertion;
import org.jboss.test.audit.annotations.SpecVersion;
-import org.jboss.jsr299.tck.AbstractJSR299Test;
-import org.jboss.jsr299.tck.literals.AnyLiteral;
import org.jboss.testharness.impl.packaging.Artifact;
import org.testng.annotations.Test;
@@ -56,7 +56,7 @@
assert observer.getNumTimesNonRuntimeBindingTypeObserved() == 2;
}
- @Test(groups = { "events", "ri-broken" }, expectedExceptions = {
IllegalArgumentException.class } )
+ @Test(groups = { "events"}, expectedExceptions = {
IllegalArgumentException.class } )
@SpecAssertion(section = "10.1", id = "f")
public void testFireEventWithNonRuntimeBindingTypeFails()
{
Modified:
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/event/bindingTypes/Wild.java
===================================================================
---
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/event/bindingTypes/Wild.java 2009-08-02
09:48:11 UTC (rev 3390)
+++
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/event/bindingTypes/Wild.java 2009-08-02
22:39:41 UTC (rev 3391)
@@ -1,7 +1,9 @@
package org.jboss.jsr299.tck.tests.event.bindingTypes;
import static java.lang.annotation.ElementType.FIELD;
+import static java.lang.annotation.ElementType.METHOD;
import static java.lang.annotation.ElementType.PARAMETER;
+import static java.lang.annotation.ElementType.TYPE;
import static java.lang.annotation.RetentionPolicy.RUNTIME;
import java.lang.annotation.Documented;
@@ -10,7 +12,7 @@
import javax.enterprise.inject.BindingType;
-@Target( { PARAMETER, FIELD })
+@Target( { FIELD, PARAMETER, METHOD, TYPE } )
@Retention(RUNTIME)
@Documented
@BindingType
Modified: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/event/fires/Role.java
===================================================================
---
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/event/fires/Role.java 2009-08-02
09:48:11 UTC (rev 3390)
+++
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/event/fires/Role.java 2009-08-02
22:39:41 UTC (rev 3391)
@@ -1,7 +1,9 @@
package org.jboss.jsr299.tck.tests.event.fires;
import static java.lang.annotation.ElementType.FIELD;
+import static java.lang.annotation.ElementType.METHOD;
import static java.lang.annotation.ElementType.PARAMETER;
+import static java.lang.annotation.ElementType.TYPE;
import static java.lang.annotation.RetentionPolicy.RUNTIME;
import java.lang.annotation.Retention;
@@ -9,7 +11,7 @@
import javax.enterprise.inject.BindingType;
-@Target( { FIELD, PARAMETER })
+@Target( { FIELD, PARAMETER, METHOD, TYPE })
@Retention(RUNTIME)
@BindingType
@interface Role
Modified:
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/event/observer/Role.java
===================================================================
---
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/event/observer/Role.java 2009-08-02
09:48:11 UTC (rev 3390)
+++
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/event/observer/Role.java 2009-08-02
22:39:41 UTC (rev 3391)
@@ -1,13 +1,19 @@
package org.jboss.jsr299.tck.tests.event.observer;
+import static java.lang.annotation.ElementType.FIELD;
+import static java.lang.annotation.ElementType.METHOD;
+import static java.lang.annotation.ElementType.PARAMETER;
+import static java.lang.annotation.ElementType.TYPE;
import static java.lang.annotation.RetentionPolicy.RUNTIME;
import java.lang.annotation.Retention;
+import java.lang.annotation.Target;
import javax.enterprise.inject.BindingType;
@BindingType
@Retention(RUNTIME)
+@Target( { FIELD, PARAMETER, METHOD, TYPE })
@interface Role
{
String value();
Modified:
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/event/observer/resolve/Role.java
===================================================================
---
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/event/observer/resolve/Role.java 2009-08-02
09:48:11 UTC (rev 3390)
+++
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/event/observer/resolve/Role.java 2009-08-02
22:39:41 UTC (rev 3391)
@@ -1,7 +1,9 @@
package org.jboss.jsr299.tck.tests.event.observer.resolve;
import static java.lang.annotation.ElementType.FIELD;
+import static java.lang.annotation.ElementType.METHOD;
import static java.lang.annotation.ElementType.PARAMETER;
+import static java.lang.annotation.ElementType.TYPE;
import static java.lang.annotation.RetentionPolicy.RUNTIME;
import java.lang.annotation.Retention;
@@ -9,7 +11,7 @@
import javax.enterprise.inject.BindingType;
-@Target( { FIELD, PARAMETER })
+@Target( { FIELD, PARAMETER, METHOD, TYPE })
@Retention(RUNTIME)
@BindingType
@interface Role