Author: shane.bryzak(a)jboss.com
Date: 2009-08-19 04:52:29 -0400 (Wed, 19 Aug 2009)
New Revision: 3558
Added:
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/interceptors/definition/AccountTransaction.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/interceptors/definition/FileLogger.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/interceptors/definition/Logged.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/interceptors/definition/NetworkLogger.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/interceptors/definition/Wheat.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/interceptors/definition/WheatProducer.java
Modified:
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/interceptors/definition/InterceptorDefinitionTest.java
Log:
section 9.1 interceptor tests
Added:
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/interceptors/definition/AccountTransaction.java
===================================================================
---
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/interceptors/definition/AccountTransaction.java
(rev 0)
+++
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/interceptors/definition/AccountTransaction.java 2009-08-19
08:52:29 UTC (rev 3558)
@@ -0,0 +1,7 @@
+package org.jboss.jsr299.tck.tests.interceptors.definition;
+
+@Logged
+class AccountTransaction
+{
+ public void transfer() {}
+}
Added:
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/interceptors/definition/FileLogger.java
===================================================================
---
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/interceptors/definition/FileLogger.java
(rev 0)
+++
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/interceptors/definition/FileLogger.java 2009-08-19
08:52:29 UTC (rev 3558)
@@ -0,0 +1,14 @@
+package org.jboss.jsr299.tck.tests.interceptors.definition;
+
+import javax.interceptor.AroundInvoke;
+import javax.interceptor.Interceptor;
+import javax.interceptor.InvocationContext;
+
+@Logged @Interceptor
+class FileLogger
+{
+ @AroundInvoke public Object alwaysReturnThis(InvocationContext ctx) throws Exception
+ {
+ return ctx.proceed();
+ }
+}
Modified:
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/interceptors/definition/InterceptorDefinitionTest.java
===================================================================
---
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/interceptors/definition/InterceptorDefinitionTest.java 2009-08-19
08:31:39 UTC (rev 3557)
+++
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/interceptors/definition/InterceptorDefinitionTest.java 2009-08-19
08:52:29 UTC (rev 3558)
@@ -18,7 +18,11 @@
package org.jboss.jsr299.tck.tests.interceptors.definition;
import java.lang.annotation.Annotation;
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Target;
+import java.lang.reflect.AnnotatedElement;
import java.lang.reflect.Type;
+import java.util.Arrays;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
@@ -194,4 +198,22 @@
assert MissileInterceptor.intercepted;
}
+
+ @Test(groups = "ri-broken")
+ @SpecAssertions({
+ @SpecAssertion(section = "9.1", id = "a"),
+ @SpecAssertion(section = "9.1", id = "b"),
+ @SpecAssertion(section = "9.1", id = "c")
+ })
+ public void testInterceptorBindingAnnotation()
+ {
+ Interceptor<?> interceptorBean = (Interceptor<?>)
getBeans(FileLogger.class).iterator().next();
+ assert interceptorBean.getInterceptorBindingTypes().size() == 1;
+ assert interceptorBean.getInterceptorBindingTypes().contains(Logged.class);
+
+ Target target = ((AnnotatedElement)
interceptorBean.getInterceptorBindingTypes().iterator().next()).getAnnotation(Target.class);
+ List<ElementType> elements = Arrays.asList(target.value());
+ assert elements.contains(ElementType.TYPE);
+ assert elements.contains(ElementType.METHOD);
+ }
}
Added:
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/interceptors/definition/Logged.java
===================================================================
---
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/interceptors/definition/Logged.java
(rev 0)
+++
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/interceptors/definition/Logged.java 2009-08-19
08:52:29 UTC (rev 3558)
@@ -0,0 +1,20 @@
+package org.jboss.jsr299.tck.tests.interceptors.definition;
+
+import static java.lang.annotation.ElementType.METHOD;
+import static java.lang.annotation.ElementType.TYPE;
+import static java.lang.annotation.RetentionPolicy.RUNTIME;
+
+import java.lang.annotation.Documented;
+import java.lang.annotation.Retention;
+import java.lang.annotation.Target;
+
+import javax.interceptor.InterceptorBindingType;
+
+@Target( { TYPE, METHOD })
+@Retention(RUNTIME)
+@Documented
+@InterceptorBindingType
+@interface Logged
+{
+
+}
Added:
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/interceptors/definition/NetworkLogger.java
===================================================================
---
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/interceptors/definition/NetworkLogger.java
(rev 0)
+++
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/interceptors/definition/NetworkLogger.java 2009-08-19
08:52:29 UTC (rev 3558)
@@ -0,0 +1,14 @@
+package org.jboss.jsr299.tck.tests.interceptors.definition;
+
+import javax.interceptor.AroundInvoke;
+import javax.interceptor.Interceptor;
+import javax.interceptor.InvocationContext;
+
+@Logged @Interceptor
+class NetworkLogger
+{
+ @AroundInvoke public Object alwaysReturnThis(InvocationContext ctx) throws Exception
+ {
+ return ctx.proceed();
+ }
+}
Added:
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/interceptors/definition/Wheat.java
===================================================================
---
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/interceptors/definition/Wheat.java
(rev 0)
+++
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/interceptors/definition/Wheat.java 2009-08-19
08:52:29 UTC (rev 3558)
@@ -0,0 +1,6 @@
+package org.jboss.jsr299.tck.tests.interceptors.definition;
+
+class Wheat
+{
+ public Wheat(String type) {}
+}
Added:
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/interceptors/definition/WheatProducer.java
===================================================================
---
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/interceptors/definition/WheatProducer.java
(rev 0)
+++
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/interceptors/definition/WheatProducer.java 2009-08-19
08:52:29 UTC (rev 3558)
@@ -0,0 +1,13 @@
+package org.jboss.jsr299.tck.tests.interceptors.definition;
+
+import javax.enterprise.inject.Produces;
+import javax.interceptor.Interceptors;
+
+(a)Interceptors(MissileInterceptor.class)
+class WheatProducer
+{
+ @Produces Wheat createWheat()
+ {
+ return new Wheat(null);
+ }
+}
Show replies by date