Author: struberg
Date: Fri Jun 27 06:49:45 2014
New Revision: 1605967
URL: http://svn.apache.org/r1605967
Log:
OWB-936 add some more interceptor and proxy tests
Added:
openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/test/component/intercept/webbeans/EnhancedActionInterceptor.java
- copied, changed from r1602754,
openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/test/component/intercept/webbeans/ActionInterceptor.java
Modified:
openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/test/component/intercept/webbeans/ActionInterceptor.java
openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/test/component/intercept/webbeans/bindings/Action.java
openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/test/component/intercept/webbeans/bindings/Transactional.java
openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/test/interceptors/factory/beans/ClassInterceptedClass.java
openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/test/interceptors/factory/beans/ClassMultiInterceptedClass.java
openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/test/interceptors/resolution/InterceptorProxyChainTest.java
openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/test/interceptors/resolution/InterceptorResolutionServiceTest.java
Modified:
openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/test/component/intercept/webbeans/ActionInterceptor.java
URL:
http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/test/component/intercept/webbeans/ActionInterceptor.java?rev=1605967&r1=1605966&r2=1605967&view=diff
==============================================================================
---
openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/test/component/intercept/webbeans/ActionInterceptor.java
(original)
+++
openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/test/component/intercept/webbeans/ActionInterceptor.java
Fri Jun 27 06:49:45 2014
@@ -32,10 +32,12 @@ import org.apache.webbeans.test.componen
@Interceptor
public class ActionInterceptor
{
+ public static Action.Type type = null;
@AroundInvoke
public Object call(InvocationContext context) throws Exception
{
+ type = Action.Type.STANDARD;
WInterceptorComponent.sWithMeta = 10;
WMetaInterceptorComponent.sWithMeta = 10;
return context.proceed();
Copied:
openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/test/component/intercept/webbeans/EnhancedActionInterceptor.java
(from r1602754,
openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/test/component/intercept/webbeans/ActionInterceptor.java)
URL:
http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/test/component/intercept/webbeans/EnhancedActionInterceptor.java?p2=openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/test/component/intercept/webbeans/EnhancedActionInterceptor.java&p1=openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/test/component/intercept/webbeans/ActionInterceptor.java&r1=1602754&r2=1605967&rev=1605967&view=diff
==============================================================================
---
openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/test/component/intercept/webbeans/ActionInterceptor.java
(original)
+++
openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/test/component/intercept/webbeans/EnhancedActionInterceptor.java
Fri Jun 27 06:49:45 2014
@@ -25,19 +25,17 @@ import javax.interceptor.InvocationConte
import org.apache.webbeans.test.component.intercept.webbeans.bindings.Action;
/**
- * This is an interceptor for an InterceptorBinding annotation (Action)
- * which has another InterceptorBinding (Transactional) as meta-annotation.
+ * This is an interceptor for an 'enhanced' Action
*/
-@Action
+@Action(Action.Type.ENHANCED)
@Interceptor
-public class ActionInterceptor
+public class EnhancedActionInterceptor extends ActionInterceptor
{
@AroundInvoke
public Object call(InvocationContext context) throws Exception
{
- WInterceptorComponent.sWithMeta = 10;
- WMetaInterceptorComponent.sWithMeta = 10;
+ type = Action.Type.ENHANCED;
return context.proceed();
}
}
Modified:
openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/test/component/intercept/webbeans/bindings/Action.java
URL:
http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/test/component/intercept/webbeans/bindings/Action.java?rev=1605967&r1=1605966&r2=1605967&view=diff
==============================================================================
---
openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/test/component/intercept/webbeans/bindings/Action.java
(original)
+++
openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/test/component/intercept/webbeans/bindings/Action.java
Fri Jun 27 06:49:45 2014
@@ -29,6 +29,13 @@ import javax.interceptor.InterceptorBind
@Retention(RetentionPolicy.RUNTIME)
@Target( { ElementType.TYPE, ElementType.METHOD })
@Transactional
-public @interface Action {
+public @interface Action
+{
+ Type value() default Type.STANDARD;
+ public enum Type
+ {
+ STANDARD,
+ ENHANCED
+ }
}
Modified:
openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/test/component/intercept/webbeans/bindings/Transactional.java
URL:
http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/test/component/intercept/webbeans/bindings/Transactional.java?rev=1605967&r1=1605966&r2=1605967&view=diff
==============================================================================
---
openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/test/component/intercept/webbeans/bindings/Transactional.java
(original)
+++
openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/test/component/intercept/webbeans/bindings/Transactional.java
Fri Jun 27 06:49:45 2014
@@ -31,4 +31,5 @@ import javax.interceptor.InterceptorBind
public @interface Transactional
{
+
}
Modified:
openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/test/interceptors/factory/beans/ClassInterceptedClass.java
URL:
http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/test/interceptors/factory/beans/ClassInterceptedClass.java?rev=1605967&r1=1605966&r2=1605967&view=diff
==============================================================================
---
openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/test/interceptors/factory/beans/ClassInterceptedClass.java
(original)
+++
openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/test/interceptors/factory/beans/ClassInterceptedClass.java
Fri Jun 27 06:49:45 2014
@@ -22,6 +22,7 @@ import javax.annotation.PostConstruct;
import javax.annotation.PreDestroy;
import javax.enterprise.context.RequestScoped;
+import org.apache.webbeans.test.component.intercept.webbeans.bindings.Secure;
import org.apache.webbeans.test.proxy.beans.DummyBean;
import
org.apache.webbeans.test.component.intercept.webbeans.bindings.Transactional;
@@ -69,6 +70,7 @@ public class ClassInterceptedClass exten
return meaningOfLife;
}
+
public void setMeaningOfLife(int meaningOfLife)
{
this.meaningOfLife = meaningOfLife;
Modified:
openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/test/interceptors/factory/beans/ClassMultiInterceptedClass.java
URL:
http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/test/interceptors/factory/beans/ClassMultiInterceptedClass.java?rev=1605967&r1=1605966&r2=1605967&view=diff
==============================================================================
---
openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/test/interceptors/factory/beans/ClassMultiInterceptedClass.java
(original)
+++
openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/test/interceptors/factory/beans/ClassMultiInterceptedClass.java
Fri Jun 27 06:49:45 2014
@@ -91,4 +91,11 @@ public class ClassMultiInterceptedClass
return c;
}
+ // this must override the default Action interceptor which was applied on
class level
+ @Action(Action.Type.ENHANCED)
+ public char methodWithEnhancedAction()
+ {
+ return c;
+ }
+
}
Modified:
openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/test/interceptors/resolution/InterceptorProxyChainTest.java
URL:
http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/test/interceptors/resolution/InterceptorProxyChainTest.java?rev=1605967&r1=1605966&r2=1605967&view=diff
==============================================================================
---
openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/test/interceptors/resolution/InterceptorProxyChainTest.java
(original)
+++
openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/test/interceptors/resolution/InterceptorProxyChainTest.java
Fri Jun 27 06:49:45 2014
@@ -33,6 +33,7 @@ import java.util.Map;
import org.apache.webbeans.intercept.DefaultInterceptorHandler;
import org.apache.webbeans.intercept.InterceptorResolutionService;
import org.apache.webbeans.test.AbstractUnitTest;
+import
org.apache.webbeans.test.component.intercept.webbeans.EnhancedActionInterceptor;
import
org.apache.webbeans.test.interceptors.factory.beans.ClassMultiInterceptedClass;
import org.apache.webbeans.proxy.InterceptorDecoratorProxyFactory;
import org.apache.webbeans.proxy.InterceptorHandler;
@@ -65,6 +66,7 @@ public class InterceptorProxyChainTest e
beanClasses.add(Secure.class);
beanClasses.add(Action.class);
beanClasses.add(ActionInterceptor.class);
+ beanClasses.add(EnhancedActionInterceptor.class);
beanClasses.add(SecureInterceptor.class);
beanClasses.add(TransactionalInterceptor.class);
@@ -149,7 +151,12 @@ public class InterceptorProxyChainTest e
//X proxyInstance = getInstance(ClassMultiInterceptedClass.class);
//X this is for creating the NormalScoping Proxy which is now separate
- proxyInstance = createNormalScopingProxy(classLoader,
ClassMultiInterceptedClass.class, proxyInstance);
+ ClassMultiInterceptedClass proxyInstance2 =
createNormalScopingProxy(classLoader, ClassMultiInterceptedClass.class,
proxyInstance);
+ Assert.assertNotNull(proxyInstance2);
+
+ int meaningOfNewLife = 97;
+ proxyInstance2.setMeaningOfLife(meaningOfNewLife);
+ Assert.assertEquals(meaningOfNewLife,
proxyInstance2.getMeaningOfLife());
//X performBenchmarkOn(proxyInstance);
Modified:
openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/test/interceptors/resolution/InterceptorResolutionServiceTest.java
URL:
http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/test/interceptors/resolution/InterceptorResolutionServiceTest.java?rev=1605967&r1=1605966&r2=1605967&view=diff
==============================================================================
---
openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/test/interceptors/resolution/InterceptorResolutionServiceTest.java
(original)
+++
openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/test/interceptors/resolution/InterceptorResolutionServiceTest.java
Fri Jun 27 06:49:45 2014
@@ -165,7 +165,7 @@ public class InterceptorResolutionServic
Map<Method, BusinessMethodInterceptorInfo> methodInterceptorInfos =
interceptorInfo.getBusinessMethodsInfo();
Assert.assertNotNull(methodInterceptorInfos);
- Assert.assertEquals(7, methodInterceptorInfos.size());
+ Assert.assertEquals(8, methodInterceptorInfos.size());
for (BusinessMethodInterceptorInfo mi :
methodInterceptorInfos.values())
{