[jboss-cvs] JBossAS SVN: r107548 - in projects/interceptors/trunk/jboss-interceptor/src: main/java/org/jboss/interceptor/reader and 2 other directories.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Thu Aug 12 00:31:58 EDT 2010
Author: marius.bogoevici
Date: 2010-08-12 00:31:57 -0400 (Thu, 12 Aug 2010)
New Revision: 107548
Modified:
projects/interceptors/trunk/jboss-interceptor/src/main/java/org/jboss/interceptor/proxy/InterceptorMethodHandler.java
projects/interceptors/trunk/jboss-interceptor/src/main/java/org/jboss/interceptor/proxy/InterceptorProxyCreatorImpl.java
projects/interceptors/trunk/jboss-interceptor/src/main/java/org/jboss/interceptor/reader/InterceptorMetadataUtils.java
projects/interceptors/trunk/jboss-interceptor/src/main/java/org/jboss/interceptor/reader/SimpleInterceptorMetadata.java
projects/interceptors/trunk/jboss-interceptor/src/test/java/org/jboss/interceptors/customInvocationContext/CustomInvocationContextTest.java
projects/interceptors/trunk/jboss-interceptor/src/test/java/org/jboss/interceptors/proxy/InterceptionTestCase.java
projects/interceptors/trunk/jboss-interceptor/src/test/java/org/jboss/interceptors/proxy/SubclassingInterceptionTestCase.java
Log:
further simplifications
Modified: projects/interceptors/trunk/jboss-interceptor/src/main/java/org/jboss/interceptor/proxy/InterceptorMethodHandler.java
===================================================================
--- projects/interceptors/trunk/jboss-interceptor/src/main/java/org/jboss/interceptor/proxy/InterceptorMethodHandler.java 2010-08-12 03:53:10 UTC (rev 107547)
+++ projects/interceptors/trunk/jboss-interceptor/src/main/java/org/jboss/interceptor/proxy/InterceptorMethodHandler.java 2010-08-12 04:31:57 UTC (rev 107548)
@@ -45,14 +45,12 @@
private InterceptionModel<ClassMetadata<?>, ClassMetadata> interceptionModel;
private Object targetInstance;
private InvocationContextFactory invocationContextFactory;
- private boolean proxy;
public InterceptorMethodHandler(Object targetInstance,
ClassMetadata<?> targetClassMetadata,
InterceptionModel<ClassMetadata<?>, ClassMetadata> interceptionModel,
InterceptorInstantiator<ClassMetadata<?>, ?> interceptorInstantiator,
- InvocationContextFactory invocationContextFactory,
- boolean proxy )
+ InvocationContextFactory invocationContextFactory )
{
this.targetInstance = targetInstance;
this.invocationContextFactory = invocationContextFactory;
@@ -70,12 +68,11 @@
interceptorHandlerInstances.put(interceptorReference, interceptorInstantiator.createFor(interceptorReference));
}
targetClassInterceptorMetadata = InterceptorMetadataUtils.readMetadataForTargetClass(targetClassMetadata);
- this.proxy = proxy;
}
protected boolean isProxy()
{
- return proxy;
+ return targetInstance != null;
}
public Object invoke(Object self, Method thisMethod, Method proceed, Object[] args) throws Throwable
Modified: projects/interceptors/trunk/jboss-interceptor/src/main/java/org/jboss/interceptor/proxy/InterceptorProxyCreatorImpl.java
===================================================================
--- projects/interceptors/trunk/jboss-interceptor/src/main/java/org/jboss/interceptor/proxy/InterceptorProxyCreatorImpl.java 2010-08-12 03:53:10 UTC (rev 107547)
+++ projects/interceptors/trunk/jboss-interceptor/src/main/java/org/jboss/interceptor/proxy/InterceptorProxyCreatorImpl.java 2010-08-12 04:31:57 UTC (rev 107548)
@@ -51,12 +51,11 @@
}
- public <T> T createProxyFromClass(ClassMetadata<T> proxifiedClass, Class<?>[] constructorTypes, Object[] constructorArguments)
+ public <T> T createSubclassingProxy(ClassMetadata<T> proxifiedClass, Class<?>[] constructorTypes, Object[] constructorArguments)
{
T instance = createAdvisedSubclassInstance(proxifiedClass, constructorTypes, constructorArguments);
MethodHandler interceptorMethodHandler = createSubclassingMethodHandler(instance, proxifiedClass);
- ((ProxyObject)instance).setHandler(new CompositeHandler(Arrays
- .asList(new MethodHandler[]{interceptorMethodHandler})));
+ ((ProxyObject)instance).setHandler(new CompositeHandler(Arrays.asList(new MethodHandler[]{interceptorMethodHandler})));
return instance;
}
@@ -109,12 +108,12 @@
public <T> MethodHandler createMethodHandler(Object target, ClassMetadata<T> proxyClass)
{
- return new InterceptorMethodHandler(target, proxyClass, interceptionModel, interceptorInstantiator, invocationContextFactory, true);
+ return new InterceptorMethodHandler(target, proxyClass, interceptionModel, interceptorInstantiator, invocationContextFactory);
}
public <T> MethodHandler createSubclassingMethodHandler(Object targetInstance, ClassMetadata<T> proxyClass)
{
- return new InterceptorMethodHandler(targetInstance, proxyClass, interceptionModel, interceptorInstantiator, invocationContextFactory, false);
+ return new InterceptorMethodHandler(targetInstance, proxyClass, interceptionModel, interceptorInstantiator, invocationContextFactory);
}
Modified: projects/interceptors/trunk/jboss-interceptor/src/main/java/org/jboss/interceptor/reader/InterceptorMetadataUtils.java
===================================================================
--- projects/interceptors/trunk/jboss-interceptor/src/main/java/org/jboss/interceptor/reader/InterceptorMetadataUtils.java 2010-08-12 03:53:10 UTC (rev 107547)
+++ projects/interceptors/trunk/jboss-interceptor/src/main/java/org/jboss/interceptor/reader/InterceptorMetadataUtils.java 2010-08-12 04:31:57 UTC (rev 107548)
@@ -53,9 +53,9 @@
{
if (!Void.TYPE.equals(method.getReturnType().getJavaClass()))
{
- if (LOG.isDebugEnabled())
+ if (LOG.isWarnEnabled())
{
- LOG.debug(getStandardIgnoredMessage(interceptionType, method.getJavaMethod()) + "does not have a void return type");
+ LOG.warn(getStandardIgnoredMessage(interceptionType, method.getJavaMethod()) + "does not have a void return type");
}
return false;
}
@@ -64,27 +64,27 @@
if (forTargetClass && parameterTypes.length != 0)
{
- if (LOG.isDebugEnabled())
+ if (LOG.isWarnEnabled())
{
- LOG.debug(getStandardIgnoredMessage(interceptionType, method.getJavaMethod()) + "is defined on the target class and does not have 0 arguments");
+ LOG.warn(getStandardIgnoredMessage(interceptionType, method.getJavaMethod()) + "is defined on the target class and does not have 0 arguments");
}
return false;
}
if (!forTargetClass && parameterTypes.length != 1)
{
- if (LOG.isDebugEnabled())
+ if (LOG.isWarnEnabled())
{
- LOG.debug(getStandardIgnoredMessage(interceptionType, method.getJavaMethod()) + "does not have exactly one parameter");
+ LOG.warn(getStandardIgnoredMessage(interceptionType, method.getJavaMethod()) + "does not have exactly one parameter");
}
return false;
}
if (parameterTypes.length == 1 && !InvocationContext.class.isAssignableFrom(parameterTypes[0]))
{
- if (LOG.isDebugEnabled())
+ if (LOG.isWarnEnabled())
{
- LOG.debug(getStandardIgnoredMessage(interceptionType, method.getJavaMethod()) + "its single argument is not a " + InvocationContext.class.getName());
+ LOG.warn(getStandardIgnoredMessage(interceptionType, method.getJavaMethod()) + "its single argument is not a " + InvocationContext.class.getName());
}
return false;
}
@@ -95,9 +95,9 @@
{
if (!Object.class.equals(method.getReturnType().getJavaClass()))
{
- if (LOG.isDebugEnabled())
+ if (LOG.isWarnEnabled())
{
- LOG.debug(getStandardIgnoredMessage(interceptionType, method.getJavaMethod()) + "does not return a " + OBJECT_CLASS_NAME);
+ LOG.warn(getStandardIgnoredMessage(interceptionType, method.getJavaMethod()) + "does not return a " + OBJECT_CLASS_NAME);
}
return false;
}
@@ -106,7 +106,7 @@
if (parameterTypes.length != 1)
{
- if (LOG.isDebugEnabled())
+ if (LOG.isWarnEnabled())
{
LOG.debug(getStandardIgnoredMessage(interceptionType, method.getJavaMethod()) + "does not have exactly 1 parameter");
}
@@ -115,7 +115,7 @@
if (!InvocationContext.class.isAssignableFrom(parameterTypes[0]))
{
- if (LOG.isDebugEnabled())
+ if (LOG.isWarnEnabled())
{
LOG.debug(getStandardIgnoredMessage(interceptionType, method.getJavaMethod()) + "does not have a " + InvocationContext.class.getName() + " parameter ");
}
Modified: projects/interceptors/trunk/jboss-interceptor/src/main/java/org/jboss/interceptor/reader/SimpleInterceptorMetadata.java
===================================================================
--- projects/interceptors/trunk/jboss-interceptor/src/main/java/org/jboss/interceptor/reader/SimpleInterceptorMetadata.java 2010-08-12 03:53:10 UTC (rev 107547)
+++ projects/interceptors/trunk/jboss-interceptor/src/main/java/org/jboss/interceptor/reader/SimpleInterceptorMetadata.java 2010-08-12 04:31:57 UTC (rev 107548)
@@ -33,6 +33,8 @@
*/
public class SimpleInterceptorMetadata implements InterceptorMetadata, Serializable
{
+
+ private static final long serialVersionUID = 1247010247012491L;
private ClassMetadata<?> interceptorClass;
Modified: projects/interceptors/trunk/jboss-interceptor/src/test/java/org/jboss/interceptors/customInvocationContext/CustomInvocationContextTest.java
===================================================================
--- projects/interceptors/trunk/jboss-interceptor/src/test/java/org/jboss/interceptors/customInvocationContext/CustomInvocationContextTest.java 2010-08-12 03:53:10 UTC (rev 107547)
+++ projects/interceptors/trunk/jboss-interceptor/src/test/java/org/jboss/interceptors/customInvocationContext/CustomInvocationContextTest.java 2010-08-12 04:31:57 UTC (rev 107548)
@@ -42,12 +42,13 @@
}
};
- InterceptionModelBuilder<ClassMetadata<?>, ClassMetadata> builder = InterceptionModelBuilder.<ClassMetadata<?>,ClassMetadata>newBuilderFor(ReflectiveClassMetadata.of(Service.class), ClassMetadata.class);
+ ClassMetadata<Service> serviceClassMetadata = ReflectiveClassMetadata.of(Service.class);
+ InterceptionModelBuilder<ClassMetadata<?>, ClassMetadata> builder = InterceptionModelBuilder.<ClassMetadata<?>,ClassMetadata>newBuilderFor(serviceClassMetadata, ClassMetadata.class);
builder.interceptAll().with(ReflectiveClassMetadata.of(CustomInterceptor.class));
InterceptionModel<ClassMetadata<?>, ClassMetadata> interceptionModel = builder.build();
InterceptorProxyCreatorImpl interceptorProxyCreator = new InterceptorProxyCreatorImpl(interceptorInstantiator, invocationContextFactory, interceptionModel);
- Service serviceInstance = interceptorProxyCreator.createProxyFromClass(ReflectiveClassMetadata.of(Service.class), new Class<?>[]{}, new Object[]{} );
+ Service serviceInstance = interceptorProxyCreator.createSubclassingProxy(serviceClassMetadata, new Class<?>[]{}, new Object[]{} );
serviceInstance.invoke();
Modified: projects/interceptors/trunk/jboss-interceptor/src/test/java/org/jboss/interceptors/proxy/InterceptionTestCase.java
===================================================================
--- projects/interceptors/trunk/jboss-interceptor/src/test/java/org/jboss/interceptors/proxy/InterceptionTestCase.java 2010-08-12 03:53:10 UTC (rev 107547)
+++ projects/interceptors/trunk/jboss-interceptor/src/test/java/org/jboss/interceptors/proxy/InterceptionTestCase.java 2010-08-12 04:31:57 UTC (rev 107548)
@@ -462,7 +462,6 @@
{
DefaultInvocationContextFactory contextFactory = new DefaultInvocationContextFactory();
InterceptorProxyCreatorImpl ipc = new InterceptorProxyCreatorImpl(interceptionHandlerFactory, contextFactory, interceptionModelRegistry.get(targetClass));
- InterceptorMetadata classMetadata = InterceptorMetadataUtils.readMetadataForTargetClass(ReflectiveClassMetadata.of(targetClass));
ClassMetadata<? extends T> targetClassMetadata = ReflectiveClassMetadata.of(targetClass);
MethodHandler methodHandler = ipc.createMethodHandler(instance, targetClassMetadata);
Class<? extends T> proxyClassWithHandler = InterceptionUtils.createProxyClassWithHandler(targetClassMetadata, methodHandler);
Modified: projects/interceptors/trunk/jboss-interceptor/src/test/java/org/jboss/interceptors/proxy/SubclassingInterceptionTestCase.java
===================================================================
--- projects/interceptors/trunk/jboss-interceptor/src/test/java/org/jboss/interceptors/proxy/SubclassingInterceptionTestCase.java 2010-08-12 03:53:10 UTC (rev 107547)
+++ projects/interceptors/trunk/jboss-interceptor/src/test/java/org/jboss/interceptors/proxy/SubclassingInterceptionTestCase.java 2010-08-12 04:31:57 UTC (rev 107548)
@@ -448,7 +448,7 @@
InterceptionModel<ClassMetadata<?>, ClassMetadata> classMetadataInterceptionModel = interceptionModelRegistry.get(targetClass);
invocationContextFactory = new DefaultInvocationContextFactory();
InterceptorProxyCreatorImpl ipc = new InterceptorProxyCreatorImpl(interceptionHandlerFactory, invocationContextFactory, classMetadataInterceptionModel);
- return ipc.createProxyFromClass(ReflectiveClassMetadata.of((Class<? extends T>) targetClass), new Class<?>[]{String.class}, args);
+ return ipc.createSubclassingProxy(ReflectiveClassMetadata.of((Class<? extends T>) targetClass), new Class<?>[]{String.class}, args);
}
}
\ No newline at end of file
More information about the jboss-cvs-commits
mailing list