[jboss-cvs] JBossAS SVN: r70849 - in projects/aop/trunk: aop/src/main/org/jboss/aop/array and 6 other directories.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Thu Mar 13 18:55:26 EDT 2008
Author: kabir.khan at jboss.com
Date: 2008-03-13 18:55:26 -0400 (Thu, 13 Mar 2008)
New Revision: 70849
Modified:
projects/aop/trunk/aop/src/main/org/jboss/aop/Advisor.java
projects/aop/trunk/aop/src/main/org/jboss/aop/ConstructionInfo.java
projects/aop/trunk/aop/src/main/org/jboss/aop/ConstructorInfo.java
projects/aop/trunk/aop/src/main/org/jboss/aop/FieldInfo.java
projects/aop/trunk/aop/src/main/org/jboss/aop/JoinPointInfo.java
projects/aop/trunk/aop/src/main/org/jboss/aop/MethodInfo.java
projects/aop/trunk/aop/src/main/org/jboss/aop/array/ArrayElementInvocation.java
projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/Construction.java
projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/ConstructionInvocation.java
projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/ConstructionInvocationWrapper.java
projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/ConstructorCall.java
projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/ConstructorCallByConstructor.java
projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/ConstructorCalledByConstructorInvocation.java
projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/ConstructorCalledByConstructorInvocationWrapper.java
projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/ConstructorCalledByConstructorJoinpoint.java
projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/ConstructorCalledByMethodInvocation.java
projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/ConstructorCalledByMethodInvocationWrapper.java
projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/ConstructorCalledByMethodJoinpoint.java
projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/ConstructorExecution.java
projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/ConstructorInvocation.java
projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/ConstructorInvocationWrapper.java
projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/ConstructorJoinpoint.java
projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/FieldInvocation.java
projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/FieldReadInvocationWrapper.java
projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/FieldWriteInvocationWrapper.java
projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/Invocation.java
projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/InvocationBase.java
projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/InvocationResponse.java
projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/MethodCall.java
projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/MethodCallByConstructor.java
projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/MethodCalledByConstructorInvocation.java
projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/MethodCalledByConstructorInvocationWrapper.java
projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/MethodCalledByConstructorJoinpoint.java
projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/MethodCalledByMethodInvocation.java
projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/MethodCalledByMethodInvocationWrapper.java
projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/MethodInvocation.java
projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/MethodInvocationWrapper.java
projects/aop/trunk/aop/src/main/org/jboss/aop/proxy/ClassProxyFactory.java
projects/aop/trunk/aop/src/main/org/jboss/aop/proxy/container/AOPProxyFactoryMixin.java
projects/aop/trunk/aop/src/main/org/jboss/aop/proxy/container/AOPProxyFactoryParameters.java
projects/aop/trunk/aop/src/main/org/jboss/aop/proxy/container/ClassProxyContainer.java
projects/aop/trunk/aop/src/main/org/jboss/aop/proxy/container/ContainerCache.java
projects/aop/trunk/aop/src/main/org/jboss/aop/proxy/container/ContainerCacheUtil.java
projects/aop/trunk/aop/src/main/org/jboss/aop/proxy/container/ContainerProxyCacheKey.java
projects/aop/trunk/aop/src/main/org/jboss/aop/proxy/container/GeneratedAOPProxyFactory.java
projects/aop/trunk/aop/src/test/org/jboss/test/aop/annotationoverride/AnnotationOverrideTestCase.java
projects/aop/trunk/aop/src/test/org/jboss/test/aop/instanceofannotated/InstanceOfAnnotatedTester.java
projects/aop/trunk/aspects/src/main/org/jboss/aspects/concurrent/MutexAspectFactory.java
Log:
Tidyup, add generics and get rid of warnings
Modified: projects/aop/trunk/aop/src/main/org/jboss/aop/Advisor.java
===================================================================
--- projects/aop/trunk/aop/src/main/org/jboss/aop/Advisor.java 2008-03-13 22:11:06 UTC (rev 70848)
+++ projects/aop/trunk/aop/src/main/org/jboss/aop/Advisor.java 2008-03-13 22:55:26 UTC (rev 70849)
@@ -343,8 +343,13 @@
return annotations;
}
- public <T extends Annotation> T resolveAnnotation(Class<T> annotation)
+ public Object resolveAnnotation(Class<? extends Annotation> annotation)
{
+ return resolveTypedAnnotation(annotation);
+ }
+
+ public <T extends Annotation> T resolveTypedAnnotation(Class<T> annotation)
+ {
if (metadata != null)
{
T value = metadata.getAnnotation(annotation);
@@ -411,13 +416,23 @@
return false;
}
- public <T extends Annotation> T resolveAnnotation(Method m, Class<T> annotation)
+ public Object resolveAnnotation(Method m, Class<? extends Annotation> annotation)
{
- return resolveAnnotation(0, m, annotation);
+ return resolveTypedAnnotation(0, m, annotation);
}
+
+ public <T extends Annotation> T resolveTypedAnnotation(Method m, Class<T> annotation)
+ {
+ return resolveTypedAnnotation(0, m, annotation);
+ }
- public <T extends Annotation> T resolveAnnotation(long hash, Method m, Class<T> annotation)
+ public Object resolveAnnotation(long hash, Method m, Class<? extends Annotation> annotation)
{
+ return resolveTypedAnnotation(hash, m, annotation);
+ }
+
+ public <T extends Annotation> T resolveTypedAnnotation(long hash, Method m, Class<T> annotation)
+ {
if (metadata != null)
{
MethodSignature signature = new MethodSignature(m.getName(), m.getParameterTypes());
@@ -440,18 +455,34 @@
return value;
}
- public <T extends Annotation> T resolveAnnotation(Method m, Class<T>[] annotationChoices)
+ public Object resolveAnnotation(Method m, Class<?>[] annotationChoices)
{
+ for (Class<?> ann : annotationChoices)
+ {
+ Object val = resolveTypedAnnotation(m, (Class<? extends Annotation>)ann);
+ if (val != null) return val;
+ }
+ return null;
+ }
+
+ public <T extends Annotation> T resolveTypedAnnotation(Method m, Class<T>[] annotationChoices)
+ {
for (Class<T> ann : annotationChoices)
{
- T val = resolveAnnotation(m, ann);
+ T val = resolveTypedAnnotation(m, ann);
if (val != null) return val;
}
return null;
}
- public <T extends Annotation> T resolveAnnotation(Field f, Class<T> annotation)
+
+ public Object resolveAnnotation(Field f, Class<? extends Annotation> annotation)
{
+ return resolveTypedAnnotation(f, annotation);
+ }
+
+ public <T extends Annotation> T resolveTypedAnnotation(Field f, Class<T> annotation)
+ {
T value = null;
if (metadata != null)
{
@@ -472,8 +503,13 @@
return value;
}
- public <T extends Annotation> T resolveAnnotation(Constructor<?> c, Class<T> annotation)
+ public Object resolveAnnotation(Constructor<?> c, Class<? extends Annotation> annotation)
{
+ return resolveTypedAnnotation(c, annotation);
+ }
+
+ public <T extends Annotation> T resolveTypedAnnotation(Constructor<?> c, Class<T> annotation)
+ {
T value = null;
if (metadata != null)
{
Modified: projects/aop/trunk/aop/src/main/org/jboss/aop/ConstructionInfo.java
===================================================================
--- projects/aop/trunk/aop/src/main/org/jboss/aop/ConstructionInfo.java 2008-03-13 22:11:06 UTC (rev 70848)
+++ projects/aop/trunk/aop/src/main/org/jboss/aop/ConstructionInfo.java 2008-03-13 22:55:26 UTC (rev 70849)
@@ -116,7 +116,7 @@
if (getAdvisor() != null)
{
- val = getAdvisor().resolveAnnotation(constructor, annotation);
+ val = getAdvisor().resolveTypedAnnotation(constructor, annotation);
if (val != null) return val;
}
Modified: projects/aop/trunk/aop/src/main/org/jboss/aop/ConstructorInfo.java
===================================================================
--- projects/aop/trunk/aop/src/main/org/jboss/aop/ConstructorInfo.java 2008-03-13 22:11:06 UTC (rev 70848)
+++ projects/aop/trunk/aop/src/main/org/jboss/aop/ConstructorInfo.java 2008-03-13 22:55:26 UTC (rev 70849)
@@ -127,7 +127,7 @@
if (getAdvisor() != null)
{
- val = getAdvisor().resolveAnnotation(constructor, annotation);
+ val = getAdvisor().resolveTypedAnnotation(constructor, annotation);
if (val != null) return val;
}
Modified: projects/aop/trunk/aop/src/main/org/jboss/aop/FieldInfo.java
===================================================================
--- projects/aop/trunk/aop/src/main/org/jboss/aop/FieldInfo.java 2008-03-13 22:11:06 UTC (rev 70848)
+++ projects/aop/trunk/aop/src/main/org/jboss/aop/FieldInfo.java 2008-03-13 22:55:26 UTC (rev 70849)
@@ -163,7 +163,7 @@
if (getAdvisor() != null)
{
- val = getAdvisor().resolveAnnotation(advisedField, annotation);
+ val = getAdvisor().resolveTypedAnnotation(advisedField, annotation);
if (val != null) return val;
}
Modified: projects/aop/trunk/aop/src/main/org/jboss/aop/JoinPointInfo.java
===================================================================
--- projects/aop/trunk/aop/src/main/org/jboss/aop/JoinPointInfo.java 2008-03-13 22:11:06 UTC (rev 70848)
+++ projects/aop/trunk/aop/src/main/org/jboss/aop/JoinPointInfo.java 2008-03-13 22:55:26 UTC (rev 70849)
@@ -190,7 +190,7 @@
Advisor advisor = getAdvisor();
if (advisor != null)
{
- return advisor.resolveAnnotation(annotation);
+ return advisor.resolveTypedAnnotation(annotation);
}
return null;
}
Modified: projects/aop/trunk/aop/src/main/org/jboss/aop/MethodInfo.java
===================================================================
--- projects/aop/trunk/aop/src/main/org/jboss/aop/MethodInfo.java 2008-03-13 22:11:06 UTC (rev 70848)
+++ projects/aop/trunk/aop/src/main/org/jboss/aop/MethodInfo.java 2008-03-13 22:55:26 UTC (rev 70849)
@@ -134,7 +134,7 @@
Advisor advisor = getAdvisor();
if (advisor != null)
{
- return getAdvisor().resolveAnnotation(hash, advisedMethod, annotation);
+ return getAdvisor().resolveTypedAnnotation(hash, advisedMethod, annotation);
}
return null;
}
Modified: projects/aop/trunk/aop/src/main/org/jboss/aop/array/ArrayElementInvocation.java
===================================================================
--- projects/aop/trunk/aop/src/main/org/jboss/aop/array/ArrayElementInvocation.java 2008-03-13 22:11:06 UTC (rev 70848)
+++ projects/aop/trunk/aop/src/main/org/jboss/aop/array/ArrayElementInvocation.java 2008-03-13 22:55:26 UTC (rev 70849)
@@ -21,6 +21,7 @@
*/
package org.jboss.aop.array;
+import java.lang.annotation.Annotation;
import java.util.List;
import java.util.Map;
@@ -103,30 +104,49 @@
}
@Override
- public Map getResponseContextInfo()
+ public Map<Object, Object> getResponseContextInfo()
{
throw new NotImplementedException();
}
@Override
- public Object resolveAnnotation(Class annotation)
+ public Object resolveAnnotation(Class<? extends Annotation> annotation)
{
throw new NotImplementedException();
}
@Override
- public Object resolveAnnotation(Class[] annotations)
+ public Object resolveAnnotation(Class<? extends Annotation>[] annotations)
{
throw new NotImplementedException();
}
@Override
- public Object resolveClassAnnotation(Class annotation)
+ public Object resolveClassAnnotation(Class<? extends Annotation> annotation)
{
throw new NotImplementedException();
}
@Override
+ public <T extends Annotation> T resolveTypedAnnotation(Class<T> annotation)
+ {
+ throw new NotImplementedException();
+ }
+
+ @Override
+ public <T extends Annotation> T resolveTypedAnnotation(Class<T>[] annotations)
+ {
+ throw new NotImplementedException();
+ }
+
+ @Override
+ public <T extends Annotation> T resolveTypedClassAnnotation(Class<T> annotation)
+ {
+ throw new NotImplementedException();
+ }
+
+
+ @Override
public Object resolveClassMetaData(Object key, Object attr)
{
throw new NotImplementedException();
@@ -145,7 +165,7 @@
}
@Override
- public void setResponseContextInfo(Map responseContextInfo)
+ public void setResponseContextInfo(Map<Object, Object> responseContextInfo)
{
throw new NotImplementedException();
}
Modified: projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/Construction.java
===================================================================
--- projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/Construction.java 2008-03-13 22:11:06 UTC (rev 70848)
+++ projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/Construction.java 2008-03-13 22:55:26 UTC (rev 70849)
@@ -36,5 +36,5 @@
/**
* Gets the constructor being called
*/
- Constructor getConstructor();
+ Constructor<?> getConstructor();
}
\ No newline at end of file
Modified: projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/ConstructionInvocation.java
===================================================================
--- projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/ConstructionInvocation.java 2008-03-13 22:11:06 UTC (rev 70848)
+++ projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/ConstructionInvocation.java 2008-03-13 22:55:26 UTC (rev 70849)
@@ -21,6 +21,7 @@
*/
package org.jboss.aop.joinpoint;
+import java.lang.annotation.Annotation;
import java.lang.reflect.Constructor;
import org.jboss.aop.ConstructionInfo;
@@ -40,9 +41,9 @@
private static final long serialVersionUID = -6040602776303875808L;
protected Object[] arguments = null; // MARSHALLED
- protected transient Constructor constructor = null;
+ protected transient Constructor<?> constructor = null;
- public ConstructionInvocation(Interceptor[] interceptors, Constructor con, Object[] args)
+ public ConstructionInvocation(Interceptor[] interceptors, Constructor<?> con, Object[] args)
{
super(interceptors);
this.constructor = con;
@@ -50,7 +51,7 @@
}
- public ConstructionInvocation(Interceptor[] interceptors, Constructor con)
+ public ConstructionInvocation(Interceptor[] interceptors, Constructor<?> con)
{
super(interceptors);
this.constructor = con;
@@ -102,20 +103,24 @@
* This method resolves an annotation based on the context of the invocation.
*
*/
- public Object resolveAnnotation(Class annotation)
+ public Object resolveAnnotation(Class<? extends Annotation> annotation)
{
- Object val = super.resolveAnnotation(annotation);
+ return resolveTypedAnnotation(annotation);
+ }
+
+ public <T extends Annotation> T resolveTypedAnnotation(Class<T> annotation)
+ {
+ T val = super.resolveTypedAnnotation(annotation);
if (val != null) return val;
if (getAdvisor() != null)
{
- val = getAdvisor().resolveAnnotation(constructor, annotation);
+ val = getAdvisor().resolveTypedAnnotation(constructor, annotation);
if (val != null) return val;
}
return null;
}
-
/**
* This method resolves metadata based on the context of the invocation.
* It iterates through its list of MetaDataResolvers to find out the
@@ -221,12 +226,12 @@
this.arguments = arguments;
}
- public Constructor getConstructor()
+ public Constructor<?> getConstructor()
{
return constructor;
}
- public void setConstructor(Constructor constructor)
+ public void setConstructor(Constructor<?> constructor)
{
this.constructor = constructor;
}
Modified: projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/ConstructionInvocationWrapper.java
===================================================================
--- projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/ConstructionInvocationWrapper.java 2008-03-13 22:11:06 UTC (rev 70848)
+++ projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/ConstructionInvocationWrapper.java 2008-03-13 22:55:26 UTC (rev 70849)
@@ -99,22 +99,22 @@
return invocation;
}
- public Constructor getConstructor()
+ public Constructor<?> getConstructor()
{
return wrapped.getConstructor();
}
- public void setConstructor(Constructor constructor)
- {
- wrapped.setConstructor(constructor);
- }
+// public void setConstructor(Constructor<?> constructor)
+// {
+// wrapped.setConstructor(constructor);
+// }
- public Map getResponseContextInfo()
+ public Map<Object, Object> getResponseContextInfo()
{
return wrapped.getResponseContextInfo();
}
- public void setResponseContextInfo(Map responseContextInfo)
+ public void setResponseContextInfo(Map<Object, Object> responseContextInfo)
{
wrapped.setResponseContextInfo(responseContextInfo);
}
Modified: projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/ConstructorCall.java
===================================================================
--- projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/ConstructorCall.java 2008-03-13 22:11:06 UTC (rev 70848)
+++ projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/ConstructorCall.java 2008-03-13 22:55:26 UTC (rev 70849)
@@ -34,16 +34,16 @@
/**
* Gets the constructor being called
*/
- Constructor getConstructor();
+ Constructor<?> getConstructor();
/**
* Gets the class making the call
*/
- Class getCallingClass();
+ Class<?> getCallingClass();
/**
* Gets the class being called
*/
- Class getCalledClass();
+ Class<?> getCalledClass();
}
\ No newline at end of file
Modified: projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/ConstructorCallByConstructor.java
===================================================================
--- projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/ConstructorCallByConstructor.java 2008-03-13 22:11:06 UTC (rev 70848)
+++ projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/ConstructorCallByConstructor.java 2008-03-13 22:55:26 UTC (rev 70849)
@@ -34,6 +34,6 @@
/**
* Gets the calling constructor
*/
- Constructor getCallingConstructor();
+ Constructor<?> getCallingConstructor();
}
\ No newline at end of file
Modified: projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/ConstructorCalledByConstructorInvocation.java
===================================================================
--- projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/ConstructorCalledByConstructorInvocation.java 2008-03-13 22:11:06 UTC (rev 70848)
+++ projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/ConstructorCalledByConstructorInvocation.java 2008-03-13 22:55:26 UTC (rev 70849)
@@ -43,8 +43,8 @@
private static final long serialVersionUID = -1569257745454443521L;
//info fields
- protected Constructor calling;
- protected Constructor constructor;
+ protected Constructor<?> calling;
+ protected Constructor<?> constructor;
protected Method wrappingMethod;
public ConstructorCalledByConstructorInvocation(ConByConInfo info, Object callingObject, Object[] args, Interceptor[] interceptors)
@@ -57,7 +57,7 @@
this(info.getAdvisor(), info.getCallingConstructor(), info.getConstructor(), info.getWrappingMethod(), callingObject, null, interceptors);
}
- public ConstructorCalledByConstructorInvocation(Advisor advisor, Constructor calling, Constructor constructor, Method wrappingMethod, Object callingObject, Object[] args, Interceptor[] interceptors)
+ public ConstructorCalledByConstructorInvocation(Advisor advisor, Constructor<?> calling, Constructor<?> constructor, Method wrappingMethod, Object callingObject, Object[] args, Interceptor[] interceptors)
{
super(advisor, callingObject, interceptors);
this.calling = calling;
@@ -75,7 +75,7 @@
*
* @return the constructor that is calling the called constructor
*/
- public Constructor getCallingConstructor()
+ public Constructor<?> getCallingConstructor()
{
return calling;
}
@@ -83,7 +83,7 @@
*
* @return the constructor call being executed by the calling method
*/
- public Constructor getCalledConstructor() { return constructor; }
+ public Constructor<?> getCalledConstructor() { return constructor; }
/**
* Is the called constructor aspectized? If so then there is a wrapping
Modified: projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/ConstructorCalledByConstructorInvocationWrapper.java
===================================================================
--- projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/ConstructorCalledByConstructorInvocationWrapper.java 2008-03-13 22:11:06 UTC (rev 70848)
+++ projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/ConstructorCalledByConstructorInvocationWrapper.java 2008-03-13 22:55:26 UTC (rev 70849)
@@ -93,12 +93,12 @@
wrapped.setArguments(arguments);
}
- public Constructor getCallingConstructor()
+ public Constructor<?> getCallingConstructor()
{
return wrapped.getCallingConstructor();
}
- public Constructor getCalledConstructor()
+ public Constructor<?> getCalledConstructor()
{
return wrapped.getCalledConstructor();
}
@@ -120,7 +120,7 @@
return invocation;
}
- public Map getResponseContextInfo()
+ public Map<Object, Object> getResponseContextInfo()
{
return wrapped.getResponseContextInfo();
}
@@ -130,7 +130,7 @@
wrapped.addResponseAttachment(key, val);
}
- public void setResponseContextInfo(Map responseContextInfo)
+ public void setResponseContextInfo(Map<Object, Object> responseContextInfo)
{
wrapped.setResponseContextInfo(responseContextInfo);
}
Modified: projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/ConstructorCalledByConstructorJoinpoint.java
===================================================================
--- projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/ConstructorCalledByConstructorJoinpoint.java 2008-03-13 22:11:06 UTC (rev 70848)
+++ projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/ConstructorCalledByConstructorJoinpoint.java 2008-03-13 22:55:26 UTC (rev 70849)
@@ -31,11 +31,11 @@
*/
public class ConstructorCalledByConstructorJoinpoint implements Joinpoint
{
- private final Constructor calling;
- private final Constructor called;
+ private final Constructor<?> calling;
+ private final Constructor<?> called;
int hashCode;
- public ConstructorCalledByConstructorJoinpoint(Constructor calling, Constructor called)
+ public ConstructorCalledByConstructorJoinpoint(Constructor<?> calling, Constructor<?> called)
{
this.calling = calling;
this.called = called;
@@ -61,12 +61,12 @@
return hashCode;
}
- public Constructor getCalling()
+ public Constructor<?> getCalling()
{
return calling;
}
- public Constructor getCalled()
+ public Constructor<?> getCalled()
{
return called;
}
Modified: projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/ConstructorCalledByMethodInvocation.java
===================================================================
--- projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/ConstructorCalledByMethodInvocation.java 2008-03-13 22:11:06 UTC (rev 70848)
+++ projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/ConstructorCalledByMethodInvocation.java 2008-03-13 22:55:26 UTC (rev 70849)
@@ -43,9 +43,9 @@
private static final long serialVersionUID = -3269308917757322223L;
//info fields
- protected Class callingClass;
+ protected Class<?> callingClass;
protected Method callingMethod;
- protected Constructor constructor;
+ protected Constructor<?> constructor;
protected Method wrappingMethod;
public ConstructorCalledByMethodInvocation(ConByMethodInfo info, Object callingObject, Object[] args, Interceptor[] interceptors)
@@ -58,8 +58,8 @@
this(info.getAdvisor(), info.getCallingClass(), info.getCallingMethod(), info.getConstructor(), info.getWrappingMethod(), callingObject, null, interceptors);
}
- public ConstructorCalledByMethodInvocation(Advisor advisor, Class callingClass,
- Method callingMethod, Constructor constructor, Method wrappingMethod, Object callingObject, Object[] args, Interceptor[] interceptors)
+ public ConstructorCalledByMethodInvocation(Advisor advisor, Class<?> callingClass,
+ Method callingMethod, Constructor<?> constructor, Method wrappingMethod, Object callingObject, Object[] args, Interceptor[] interceptors)
{
super(advisor, callingObject, interceptors);
this.callingClass = callingClass;
@@ -78,7 +78,7 @@
/**
* @return The class that is making the call on the constructor
*/
- public Class getCallingClass()
+ public Class<?> getCallingClass()
{
return callingClass;
}
@@ -94,7 +94,7 @@
/**
* @return the constructor call being executed by the calling method
*/
- public Constructor getCalledConstructor()
+ public Constructor<?> getCalledConstructor()
{
return constructor;
}
Modified: projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/ConstructorCalledByMethodInvocationWrapper.java
===================================================================
--- projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/ConstructorCalledByMethodInvocationWrapper.java 2008-03-13 22:11:06 UTC (rev 70848)
+++ projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/ConstructorCalledByMethodInvocationWrapper.java 2008-03-13 22:55:26 UTC (rev 70849)
@@ -75,7 +75,7 @@
return wrapped.getInstanceResolver();
}
- public Class getCallingClass()
+ public Class<?> getCallingClass()
{
return wrapped.getCallingClass();
}
@@ -85,7 +85,7 @@
return wrapped.getCallingMethod();
}
- public Constructor getCalledConstructor()
+ public Constructor<?> getCalledConstructor()
{
return wrapped.getCalledConstructor();
}
@@ -122,12 +122,12 @@
wrapped.setTargetObject(targetObject);
}
- public Map getResponseContextInfo()
+ public Map<Object, Object> getResponseContextInfo()
{
return wrapped.getResponseContextInfo();
}
- public void setResponseContextInfo(Map responseContextInfo)
+ public void setResponseContextInfo(Map<Object, Object> responseContextInfo)
{
wrapped.setResponseContextInfo(responseContextInfo);
}
Modified: projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/ConstructorCalledByMethodJoinpoint.java
===================================================================
--- projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/ConstructorCalledByMethodJoinpoint.java 2008-03-13 22:11:06 UTC (rev 70848)
+++ projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/ConstructorCalledByMethodJoinpoint.java 2008-03-13 22:55:26 UTC (rev 70849)
@@ -33,10 +33,10 @@
public class ConstructorCalledByMethodJoinpoint implements Joinpoint
{
private final Method calling;
- private final Constructor called;
+ private final Constructor<?> called;
int hashCode;
- public ConstructorCalledByMethodJoinpoint(Method calling, Constructor called)
+ public ConstructorCalledByMethodJoinpoint(Method calling, Constructor<?> called)
{
this.calling = calling;
this.called = called;
@@ -67,7 +67,7 @@
return calling;
}
- public Constructor getCalled()
+ public Constructor<?> getCalled()
{
return called;
}
Modified: projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/ConstructorExecution.java
===================================================================
--- projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/ConstructorExecution.java 2008-03-13 22:11:06 UTC (rev 70848)
+++ projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/ConstructorExecution.java 2008-03-13 22:55:26 UTC (rev 70849)
@@ -35,6 +35,6 @@
/**
* Gets the constructor being called
*/
- Constructor getConstructor();
+ Constructor<?> getConstructor();
}
\ No newline at end of file
Modified: projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/ConstructorInvocation.java
===================================================================
--- projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/ConstructorInvocation.java 2008-03-13 22:11:06 UTC (rev 70848)
+++ projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/ConstructorInvocation.java 2008-03-13 22:55:26 UTC (rev 70849)
@@ -24,6 +24,7 @@
import org.jboss.aop.ConstructorInfo;
import org.jboss.aop.advice.Interceptor;
+import java.lang.annotation.Annotation;
import java.lang.reflect.Constructor;
import java.lang.reflect.InvocationTargetException;
@@ -40,7 +41,7 @@
private static final long serialVersionUID = -7880020293056198584L;
protected Object[] arguments = null; // MARSHALLED
- protected transient Constructor constructor = null;
+ protected transient Constructor<?> constructor = null;
public ConstructorInvocation(Interceptor[] interceptors)
{
@@ -86,7 +87,7 @@
{
try
{
- Constructor con = getConstructor();
+ Constructor<?> con = getConstructor();
Object[] args = getArguments();
setTargetObject(con.newInstance(args));
return getTargetObject();
@@ -115,14 +116,19 @@
* This method resolves an annotation based on the context of the invocation.
*
*/
- public Object resolveAnnotation(Class annotation)
+ public Object resolveAnnotation(Class<? extends Annotation> annotation)
{
- Object val = super.resolveAnnotation(annotation);
+ return resolveTypedAnnotation(annotation);
+ }
+
+ public <T extends Annotation> T resolveTypedAnnotation(Class<T> annotation)
+ {
+ T val = super.resolveTypedAnnotation(annotation);
if (val != null) return val;
if (getAdvisor() != null)
{
- val = getAdvisor().resolveAnnotation(constructor, annotation);
+ val = getAdvisor().resolveTypedAnnotation(constructor, annotation);
if (val != null) return val;
}
@@ -227,12 +233,12 @@
this.arguments = arguments;
}
- public Constructor getConstructor()
+ public Constructor<?> getConstructor()
{
return constructor;
}
- public void setConstructor(Constructor constructor)
+ public void setConstructor(Constructor<?> constructor)
{
this.constructor = constructor;
}
Modified: projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/ConstructorInvocationWrapper.java
===================================================================
--- projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/ConstructorInvocationWrapper.java 2008-03-13 22:11:06 UTC (rev 70848)
+++ projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/ConstructorInvocationWrapper.java 2008-03-13 22:55:26 UTC (rev 70849)
@@ -99,22 +99,22 @@
return invocation;
}
- public Constructor getConstructor()
+ public Constructor<?> getConstructor()
{
return wrapped.getConstructor();
}
- public void setConstructor(Constructor constructor)
+ public void setConstructor(Constructor<?> constructor)
{
wrapped.setConstructor(constructor);
}
- public Map getResponseContextInfo()
+ public Map<Object, Object> getResponseContextInfo()
{
return wrapped.getResponseContextInfo();
}
- public void setResponseContextInfo(Map responseContextInfo)
+ public void setResponseContextInfo(Map<Object, Object> responseContextInfo)
{
wrapped.setResponseContextInfo(responseContextInfo);
}
Modified: projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/ConstructorJoinpoint.java
===================================================================
--- projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/ConstructorJoinpoint.java 2008-03-13 22:11:06 UTC (rev 70848)
+++ projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/ConstructorJoinpoint.java 2008-03-13 22:55:26 UTC (rev 70849)
@@ -31,10 +31,10 @@
*/
public class ConstructorJoinpoint implements Joinpoint
{
- private final Constructor constructor;
+ private final Constructor<?> constructor;
int hashCode;
- public ConstructorJoinpoint(Constructor con)
+ public ConstructorJoinpoint(Constructor<?> con)
{
this.constructor = con;
}
@@ -57,7 +57,7 @@
return hashCode;
}
- public Constructor getConstructor()
+ public Constructor<?> getConstructor()
{
return constructor;
}
Modified: projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/FieldInvocation.java
===================================================================
--- projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/FieldInvocation.java 2008-03-13 22:11:06 UTC (rev 70848)
+++ projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/FieldInvocation.java 2008-03-13 22:55:26 UTC (rev 70849)
@@ -24,6 +24,7 @@
import org.jboss.aop.FieldInfo;
import org.jboss.aop.advice.Interceptor;
+import java.lang.annotation.Annotation;
import java.lang.reflect.Field;
/**
@@ -63,19 +64,25 @@
* This method resolves an annotation based on the context of the invocation.
*
*/
- public Object resolveAnnotation(Class annotation)
+ public Object resolveAnnotation(Class<? extends Annotation> annotation)
{
- Object val = super.resolveAnnotation(annotation);
+ return resolveTypedAnnotation(annotation);
+ }
+
+ public <T extends Annotation> T resolveTypedAnnotation(Class<T> annotation)
+ {
+ T val = super.resolveTypedAnnotation(annotation);
if (val != null) return val;
if (getAdvisor() != null)
{
- val = getAdvisor().resolveAnnotation(field, annotation);
+ val = getAdvisor().resolveTypedAnnotation(field, annotation);
if (val != null) return val;
}
return null;
}
+
/**
* This method resolves metadata based on the context of the invocation.
* It iterates through its list of MetaDataResolvers to find out the
Modified: projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/FieldReadInvocationWrapper.java
===================================================================
--- projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/FieldReadInvocationWrapper.java 2008-03-13 22:11:06 UTC (rev 70848)
+++ projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/FieldReadInvocationWrapper.java 2008-03-13 22:55:26 UTC (rev 70849)
@@ -99,12 +99,12 @@
return wrapped.getIndex();
}
- public Map getResponseContextInfo()
+ public Map<Object, Object> getResponseContextInfo()
{
return wrapped.getResponseContextInfo();
}
- public void setResponseContextInfo(Map responseContextInfo)
+ public void setResponseContextInfo(Map<Object, Object> responseContextInfo)
{
wrapped.setResponseContextInfo(responseContextInfo);
}
Modified: projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/FieldWriteInvocationWrapper.java
===================================================================
--- projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/FieldWriteInvocationWrapper.java 2008-03-13 22:11:06 UTC (rev 70848)
+++ projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/FieldWriteInvocationWrapper.java 2008-03-13 22:55:26 UTC (rev 70849)
@@ -109,12 +109,12 @@
return wrapped.getIndex();
}
- public Map getResponseContextInfo()
+ public Map<Object, Object> getResponseContextInfo()
{
return wrapped.getResponseContextInfo();
}
- public void setResponseContextInfo(Map responseContextInfo)
+ public void setResponseContextInfo(Map<Object, Object> responseContextInfo)
{
wrapped.setResponseContextInfo(responseContextInfo);
}
Modified: projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/Invocation.java
===================================================================
--- projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/Invocation.java 2008-03-13 22:11:06 UTC (rev 70848)
+++ projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/Invocation.java 2008-03-13 22:55:26 UTC (rev 70849)
@@ -25,6 +25,7 @@
import org.jboss.aop.advice.Interceptor;
import org.jboss.aop.metadata.SimpleMetaData;
+import java.lang.annotation.Annotation;
import java.util.Map;
/**
@@ -35,9 +36,9 @@
*/
public interface Invocation
{
- Map getResponseContextInfo();
+ Map<Object, Object> getResponseContextInfo();
- void setResponseContextInfo(Map responseContextInfo);
+ void setResponseContextInfo(Map<Object, Object> responseContextInfo);
void addResponseAttachment(Object key, Object val);
@@ -62,6 +63,7 @@
*/
Object resolveClassMetaData(Object key, Object attr);
+
/**
* Abstraction for resolving an annotation so that
* it can be overriden from the Class
@@ -69,26 +71,53 @@
* @param annotation
* @return
*/
- Object resolveClassAnnotation(Class annotation);
+ Object resolveClassAnnotation(Class<? extends Annotation> annotation);
/**
* Abstraction for resolving an annotation so that
+ * it can be overriden from the Class
+ *
+ * @param annotation
+ * @return
+ */
+ <T extends Annotation> T resolveTypedClassAnnotation(Class<T> annotation);
+
+ /**
+ * Abstraction for resolving an annotation so that
* it can be overriden from the Method, Constructor, Field, etc.
*
* @param annotation
* @return
*/
- Object resolveAnnotation(Class annotation);
+ Object resolveAnnotation(Class<? extends Annotation> annotation);
/**
* Abstraction for resolving an annotation so that
* it can be overriden from the Method, Constructor, Field, etc.
*
+ * @param annotation
+ * @return
+ */
+ <T extends Annotation> T resolveTypedAnnotation(Class<T> annotation);
+
+ /**
+ * Abstraction for resolving an annotation so that
+ * it can be overriden from the Method, Constructor, Field, etc.
+ *
* @param annotations
* @return
*/
- Object resolveAnnotation(Class[] annotations);
+ Object resolveAnnotation(Class<? extends Annotation>[] annotations);
+ /**
+ * Abstraction for resolving an annotation so that
+ * it can be overriden from the Method, Constructor, Field, etc.
+ *
+ * @param annotations
+ * @return
+ */
+ <T extends Annotation> T resolveTypedAnnotation(Class<T>[] annotations);
+
/**
* Invoke on the next interceptor in the chain. If this is already
* the end of the chain, reflection will call the constructor, field, or
Modified: projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/InvocationBase.java
===================================================================
--- projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/InvocationBase.java 2008-03-13 22:11:06 UTC (rev 70848)
+++ projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/InvocationBase.java 2008-03-13 22:55:26 UTC (rev 70849)
@@ -28,6 +28,7 @@
import org.jboss.aop.metadata.MetaDataResolver;
import org.jboss.aop.metadata.SimpleMetaData;
+import java.lang.annotation.Annotation;
import java.util.HashMap;
import java.util.Map;
@@ -48,26 +49,26 @@
protected transient int currentInterceptor = 0;
protected transient org.jboss.aop.advice.Interceptor[] interceptors = null;
protected transient Advisor advisor = null;
- protected transient Map responseContextInfo = null;
+ protected transient Map<Object, Object> responseContextInfo = null;
protected transient Object targetObject = null;
// todo need to refactor this as ClassProxyTemplate still needs this for remoting
protected transient MetaDataResolver instanceResolver;
- public Map getResponseContextInfo()
+ public Map<Object, Object> getResponseContextInfo()
{
return responseContextInfo;
}
- public void setResponseContextInfo(Map responseContextInfo)
+ public void setResponseContextInfo(Map<Object, Object> responseContextInfo)
{
this.responseContextInfo = responseContextInfo;
}
public void addResponseAttachment(Object key, Object val)
{
- if (responseContextInfo == null) responseContextInfo = new HashMap(1);
+ if (responseContextInfo == null) responseContextInfo = new HashMap<Object, Object>(1);
responseContextInfo.put(key, val);
}
@@ -200,24 +201,39 @@
}
- public Object resolveClassAnnotation(Class annotation)
+ public Object resolveClassAnnotation(Class<? extends Annotation> annotation)
{
- if (advisor != null) return advisor.resolveAnnotation(annotation);
- return null;
+ return resolveTypedClassAnnotation(annotation);
}
+
+ public <T extends Annotation> T resolveTypedClassAnnotation(Class<T> annotation)
+ {
+ if (advisor != null) return advisor.resolveTypedAnnotation(annotation);
+ return null;
+ }
- public Object resolveAnnotation(Class annotation)
+ public Object resolveAnnotation(Class<? extends Annotation> annotation)
{
// todo need to add hooks for invocation and thread metadata.
return null;
}
- public Object resolveAnnotation(Class[] annotations)
+ public <T extends Annotation> T resolveTypedAnnotation(Class<T> annotation)
{
+ return null;
+ }
+
+ public Object resolveAnnotation(Class<? extends Annotation>[] annotations)
+ {
// todo need to add hooks for invocation and thread metadata.
return null;
}
+ public <T extends Annotation> T resolveTypedAnnotation(Class<T>[] annotations)
+ {
+ return null;
+ }
+
/**
* This method resolves metadata based on the context of the invocation.
* It iterates through its list of MetaDataResolvers to find out the
Modified: projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/InvocationResponse.java
===================================================================
--- projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/InvocationResponse.java 2008-03-13 22:11:06 UTC (rev 70848)
+++ projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/InvocationResponse.java 2008-03-13 22:55:26 UTC (rev 70849)
@@ -23,7 +23,6 @@
import java.io.IOException;
import java.util.HashMap;
-import java.util.Iterator;
import java.util.Map;
/**
@@ -43,18 +42,18 @@
private static final long serialVersionUID = 2974596986988236395L;
- public Map getContextInfo()
+ public Map<Object, Object> getContextInfo()
{
return contextInfo;
}
- public void setContextInfo(Map contextInfo)
+ public void setContextInfo(Map<Object, Object> contextInfo)
{
this.contextInfo = contextInfo;
}
// The Map of methods used by this Invocation
- protected Map contextInfo = null;
+ protected Map<Object, Object> contextInfo = null;
protected Object response = null;
// Constructors --------------------------------------------------
@@ -84,7 +83,7 @@
public void addAttachment(Object key, Object val)
{
- if (contextInfo == null) contextInfo = new HashMap(1);
+ if (contextInfo == null) contextInfo = new HashMap<Object, Object>(1);
contextInfo.put(key, val);
}
@@ -106,10 +105,8 @@
else
{
out.writeInt(contextInfo.size());
- Iterator keys = contextInfo.keySet().iterator();
- while (keys.hasNext())
+ for (Object currentKey : contextInfo.keySet())
{
- Object currentKey = keys.next();
out.writeObject(currentKey);
out.writeObject(contextInfo.get(currentKey));
}
@@ -129,7 +126,7 @@
}
else
{
- contextInfo = new HashMap(size);
+ contextInfo = new HashMap<Object, Object>(size);
for (int i = 0; i < size; i++)
{
Object key = in.readObject();
Modified: projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/MethodCall.java
===================================================================
--- projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/MethodCall.java 2008-03-13 22:11:06 UTC (rev 70848)
+++ projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/MethodCall.java 2008-03-13 22:55:26 UTC (rev 70849)
@@ -34,12 +34,12 @@
/**
* Gets the class containing the method/constructor making the call
*/
- Class getCallingClass();
+ Class<?> getCallingClass();
/**
* Gets the class containing the method being called
*/
- Class getCalledClass();
+ Class<?> getCalledClass();
/**
* Gets the method being called
Modified: projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/MethodCallByConstructor.java
===================================================================
--- projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/MethodCallByConstructor.java 2008-03-13 22:11:06 UTC (rev 70848)
+++ projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/MethodCallByConstructor.java 2008-03-13 22:55:26 UTC (rev 70849)
@@ -34,6 +34,6 @@
/**
* Gets the constructor making the call
*/
- Constructor getCallingConstructor();
+ Constructor<?> getCallingConstructor();
}
\ No newline at end of file
Modified: projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/MethodCalledByConstructorInvocation.java
===================================================================
--- projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/MethodCalledByConstructorInvocation.java 2008-03-13 22:11:06 UTC (rev 70848)
+++ projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/MethodCalledByConstructorInvocation.java 2008-03-13 22:55:26 UTC (rev 70849)
@@ -43,7 +43,7 @@
private static final long serialVersionUID = -1903092605231217830L;
//info fields
- protected Constructor calling;
+ protected Constructor<?> calling;
protected Method method;
public MethodCalledByConstructorInvocation(MethodByConInfo info, Object callingObject, Object target, Object[] args, Interceptor[] interceptors)
@@ -56,7 +56,7 @@
this(info.getAdvisor(), info.getCallingConstructor(), info.getMethod(), callingObject, target, null, interceptors);
}
- public MethodCalledByConstructorInvocation(Advisor advisor, Constructor calling, Method method, Object callingObject, Object target, Object[] args, Interceptor[] interceptors)
+ public MethodCalledByConstructorInvocation(Advisor advisor, Constructor<?> calling, Method method, Object callingObject, Object target, Object[] args, Interceptor[] interceptors)
{
super(advisor, callingObject, interceptors);
this.calling = calling;
@@ -162,7 +162,7 @@
*
* @return The constructor that is calling the method
*/
- public Constructor getCalling()
+ public Constructor<?> getCalling()
{
return calling;
}
Modified: projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/MethodCalledByConstructorInvocationWrapper.java
===================================================================
--- projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/MethodCalledByConstructorInvocationWrapper.java 2008-03-13 22:11:06 UTC (rev 70848)
+++ projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/MethodCalledByConstructorInvocationWrapper.java 2008-03-13 22:55:26 UTC (rev 70849)
@@ -92,7 +92,7 @@
wrapped.setArguments(arguments);
}
- public Constructor getCalling()
+ public Constructor<?> getCalling()
{
return wrapped.getCalling();
}
@@ -102,7 +102,7 @@
return wrapped.getCalledMethod();
}
- public Map getResponseContextInfo()
+ public Map<Object, Object> getResponseContextInfo()
{
return wrapped.getResponseContextInfo();
}
@@ -112,7 +112,7 @@
wrapped.addResponseAttachment(key, val);
}
- public void setResponseContextInfo(Map responseContextInfo)
+ public void setResponseContextInfo(Map<Object, Object> responseContextInfo)
{
wrapped.setResponseContextInfo(responseContextInfo);
}
Modified: projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/MethodCalledByConstructorJoinpoint.java
===================================================================
--- projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/MethodCalledByConstructorJoinpoint.java 2008-03-13 22:11:06 UTC (rev 70848)
+++ projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/MethodCalledByConstructorJoinpoint.java 2008-03-13 22:55:26 UTC (rev 70849)
@@ -32,11 +32,11 @@
*/
public class MethodCalledByConstructorJoinpoint implements Joinpoint
{
- private final Constructor calling;
+ private final Constructor<?> calling;
private final Method called;
int hashCode;
- public MethodCalledByConstructorJoinpoint(Constructor calling, Method called)
+ public MethodCalledByConstructorJoinpoint(Constructor<?> calling, Method called)
{
this.calling = calling;
this.called = called;
@@ -62,7 +62,7 @@
return hashCode;
}
- public Constructor getCalling()
+ public Constructor<?> getCalling()
{
return calling;
}
Modified: projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/MethodCalledByMethodInvocation.java
===================================================================
--- projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/MethodCalledByMethodInvocation.java 2008-03-13 22:11:06 UTC (rev 70848)
+++ projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/MethodCalledByMethodInvocation.java 2008-03-13 22:55:26 UTC (rev 70849)
@@ -42,7 +42,7 @@
private static final long serialVersionUID = -156920151151728318L;
//info fields
- Class callingClass;
+ Class<?> callingClass;
Method callingMethod;
Method method;
@@ -56,7 +56,7 @@
this(info.getAdvisor(), info.getCallingClass(), info.getCallingMethod(), info.getMethod(), callingObject, targetObject, null, interceptors);
}
- public MethodCalledByMethodInvocation(Advisor advisor, Class callingClass,
+ public MethodCalledByMethodInvocation(Advisor advisor, Class<?> callingClass,
Method callingMethod, Method method, Object callingObject, Object targetObject, Object[] args, Interceptor[] interceptors)
{
super(advisor, callingObject, interceptors);
@@ -163,7 +163,7 @@
/**
* @return The class that is making the call on the method
*/
- public Class getCallingClass()
+ public Class<?> getCallingClass()
{
return callingClass;
}
Modified: projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/MethodCalledByMethodInvocationWrapper.java
===================================================================
--- projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/MethodCalledByMethodInvocationWrapper.java 2008-03-13 22:11:06 UTC (rev 70848)
+++ projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/MethodCalledByMethodInvocationWrapper.java 2008-03-13 22:55:26 UTC (rev 70849)
@@ -98,7 +98,7 @@
wrapped.setArguments(arguments);
}
- public Class getCallingClass()
+ public Class<?> getCallingClass()
{
return wrapped.getCallingClass();
}
@@ -108,12 +108,12 @@
return wrapped.getCallingMethod();
}
- public Map getResponseContextInfo()
+ public Map<Object, Object> getResponseContextInfo()
{
return wrapped.getResponseContextInfo();
}
- public void setResponseContextInfo(Map responseContextInfo)
+ public void setResponseContextInfo(Map<Object, Object> responseContextInfo)
{
wrapped.setResponseContextInfo(responseContextInfo);
}
Modified: projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/MethodInvocation.java
===================================================================
--- projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/MethodInvocation.java 2008-03-13 22:11:06 UTC (rev 70848)
+++ projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/MethodInvocation.java 2008-03-13 22:55:26 UTC (rev 70849)
@@ -24,6 +24,7 @@
import java.io.IOException;
import java.io.ObjectInput;
import java.io.ObjectOutput;
+import java.lang.annotation.Annotation;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
import java.rmi.MarshalledObject;
@@ -144,15 +145,15 @@
if (target == null)
throw new IllegalArgumentException("Null target for method " + method);
- Class methodClass = method.getClass();
- Class targetClass = target.getClass();
+ Class<?> methodClass = method.getClass();
+ Class<?> targetClass = target.getClass();
if (methodClass.isAssignableFrom(targetClass) == false)
throw new IllegalArgumentException("Wrong target. " + targetClass + " for " + method);
- ArrayList expected = new ArrayList();
- Class[] parameterTypes = method.getParameterTypes();
+ ArrayList<String> expected = new ArrayList<String>();
+ Class<?>[] parameterTypes = method.getParameterTypes();
for (int i = 0; i < parameterTypes.length; ++i)
expected.add(parameterTypes[i].getName());
- ArrayList actual = new ArrayList();
+ ArrayList<String> actual = new ArrayList<String>();
if (arguments != null)
{
for (int i = 0; i < arguments.length; ++i)
@@ -175,14 +176,19 @@
/**
* This method resolves an annotation based on the context of the invocation.
*/
- public Object resolveAnnotation(Class annotation)
+ public Object resolveAnnotation(Class<? extends Annotation> annotation)
{
- Object val = super.resolveAnnotation(annotation);
+ return resolveTypedAnnotation(annotation);
+ }
+
+ public <T extends Annotation> T resolveTypedAnnotation(Class<T> annotation)
+ {
+ T val = super.resolveTypedAnnotation(annotation);
if (val != null) return val;
if (getAdvisor() != null)
{
- val = getAdvisor().resolveAnnotation(getMethodHash(), getMethod(), annotation);
+ val = getAdvisor().resolveTypedAnnotation(getMethodHash(), getMethod(), annotation);
if (val != null) return val;
}
@@ -192,7 +198,7 @@
/**
* This method resolves an annotation based on the context of the invocation.
*/
- public Object resolveAnnotation(Class[] annotations)
+ public Object resolveAnnotation(Class<? extends Annotation>[] annotations)
{
Object val = super.resolveAnnotation(annotations);
if (val != null) return val;
@@ -202,10 +208,24 @@
val = getAdvisor().resolveAnnotation(getMethod(), annotations);
if (val != null) return val;
}
+
+ return null;
+ }
+ public <T extends Annotation> T resolveTypedAnnotation(Class<T>[] annotations)
+ {
+ T val = super.resolveTypedAnnotation(annotations);
+ if (val != null) return val;
+
+ if (getAdvisor() != null)
+ {
+ val = getAdvisor().resolveTypedAnnotation(getMethod(), annotations);
+ if (val != null) return val;
+ }
+
return null;
}
-
+
/**
* This method resolves metadata based on the context of the invocation.
* It iterates through its list of MetaDataResolvers to find out the
Modified: projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/MethodInvocationWrapper.java
===================================================================
--- projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/MethodInvocationWrapper.java 2008-03-13 22:11:06 UTC (rev 70848)
+++ projects/aop/trunk/aop/src/main/org/jboss/aop/joinpoint/MethodInvocationWrapper.java 2008-03-13 22:55:26 UTC (rev 70849)
@@ -122,12 +122,12 @@
return wrapped.getAdvisor();
}
- public Map getResponseContextInfo()
+ public Map<Object, Object> getResponseContextInfo()
{
return wrapped.getResponseContextInfo();
}
- public void setResponseContextInfo(Map responseContextInfo)
+ public void setResponseContextInfo(Map<Object, Object> responseContextInfo)
{
wrapped.setResponseContextInfo(responseContextInfo);
}
Modified: projects/aop/trunk/aop/src/main/org/jboss/aop/proxy/ClassProxyFactory.java
===================================================================
--- projects/aop/trunk/aop/src/main/org/jboss/aop/proxy/ClassProxyFactory.java 2008-03-13 22:11:06 UTC (rev 70848)
+++ projects/aop/trunk/aop/src/main/org/jboss/aop/proxy/ClassProxyFactory.java 2008-03-13 22:55:26 UTC (rev 70849)
@@ -57,39 +57,39 @@
public class ClassProxyFactory
{
private static Object maplock = new Object();
- private static WeakValueHashMap classnameMap = new WeakValueHashMap();
- private static WeakHashMap proxyCache = new WeakHashMap();
+ private static WeakValueHashMap<String, Class<?>> classnameMap = new WeakValueHashMap<String, Class<?>>();
+ private static WeakHashMap<Class<?>, WeakReference<Class<?>>> proxyCache = new WeakHashMap<Class<?>, WeakReference<Class<?>>>();
private static WeakHashMap methodMapCache = new WeakHashMap();
- public static ClassProxy newInstance(Class clazz) throws Exception
+ public static ClassProxy newInstance(Class<?> clazz) throws Exception
{
return newInstance(clazz, null);
}
- public static ClassProxy newInstance(Class clazz, ProxyMixin[] mixins) throws Exception
+ public static ClassProxy newInstance(Class<?> clazz, ProxyMixin[] mixins) throws Exception
{
return newInstance(clazz, mixins, new ClassInstanceAdvisor());
}
- private static Class getProxyClass(Class clazz, ProxyMixin[] mixins)
+ private static Class<?> getProxyClass(Class<?> clazz, ProxyMixin[] mixins)
throws Exception
{
// Don't make a proxy of a proxy !
if (ClassProxy.class.isAssignableFrom(clazz)) clazz = clazz.getSuperclass();
- Class proxyClass = null;
+ Class<?> proxyClass = null;
synchronized (maplock)
{
- WeakReference ref = (WeakReference) proxyCache.get(clazz);
+ WeakReference<Class<?>> ref = proxyCache.get(clazz);
if (ref != null)
{
- proxyClass = (Class)ref.get();
+ proxyClass = ref.get();
}
if (proxyClass == null)
{
proxyClass = generateProxy(clazz, mixins);
classnameMap.put(clazz.getName(), proxyClass);
- proxyCache.put(clazz, new WeakReference(proxyClass));
+ proxyCache.put(clazz, new WeakReference<Class<?>>(proxyClass));
HashMap map = methodMap(clazz);
methodMapCache.put(proxyClass, map);
}
@@ -318,7 +318,7 @@
return proxyClass;
}
- private static void populateMethodTables(HashMap advised, List ignoredHash, Class superclass)
+ private static void populateMethodTables(HashMap<Long, MethodPersistentReference> advised, List ignoredHash, Class superclass)
throws Exception
{
if (superclass == null) return;
@@ -350,10 +350,10 @@
}
- public static HashMap methodMap(Class clazz)
+ public static HashMap<Long, MethodPersistentReference> methodMap(Class<?> clazz)
throws Exception
{
- HashMap methods = new HashMap();
+ HashMap<Long, MethodPersistentReference> methods = new HashMap<Long, MethodPersistentReference>();
List ignoredHash = new ArrayList();
populateMethodTables(methods, ignoredHash, clazz);
return methods;
Modified: projects/aop/trunk/aop/src/main/org/jboss/aop/proxy/container/AOPProxyFactoryMixin.java
===================================================================
--- projects/aop/trunk/aop/src/main/org/jboss/aop/proxy/container/AOPProxyFactoryMixin.java 2008-03-13 22:11:06 UTC (rev 70848)
+++ projects/aop/trunk/aop/src/main/org/jboss/aop/proxy/container/AOPProxyFactoryMixin.java 2008-03-13 22:55:26 UTC (rev 70849)
@@ -27,18 +27,20 @@
public class AOPProxyFactoryMixin implements Serializable
{
+ private static final long serialVersionUID = 1L;
+
private String construction;
- private WeakReference<Class> mixinClassRef;
- private WeakReference<Class>[] interfaceClassRefs;
+ private WeakReference<Class<?>> mixinClassRef;
+ private WeakReference<Class<?>>[] interfaceClassRefs;
private int hashcode;
- public AOPProxyFactoryMixin(Class mixin, Class[] interfaces)
+ public AOPProxyFactoryMixin(Class<?> mixin, Class<?>[] interfaces)
{
- mixinClassRef = new WeakReference(mixin);
+ mixinClassRef = new WeakReference<Class<?>>(mixin);
interfaceClassRefs = ContainerCacheUtil.getSortedWeakReferenceForInterfaces(interfaces);
}
- public AOPProxyFactoryMixin(Class mixin, Class[] interfaces, String parameters)
+ public AOPProxyFactoryMixin(Class<?> mixin, Class<?>[] interfaces, String parameters)
{
this(mixin, interfaces);
StringBuffer construction = new StringBuffer(" new ");
@@ -64,11 +66,11 @@
}
- public Class[] getInterfaces()
+ public Class<?>[] getInterfaces()
{
if (interfaceClassRefs != null)
{
- Class[] interfaces = new Class[interfaceClassRefs.length];
+ Class<?>[] interfaces = new Class[interfaceClassRefs.length];
for (int i = 0 ; i < interfaces.length ; i++)
{
interfaces[i] = interfaceClassRefs[i].get();
@@ -78,9 +80,9 @@
return null;
}
- public Class getMixin()
+ public Class<?> getMixin()
{
- return (Class)mixinClassRef.get();
+ return mixinClassRef.get();
}
public boolean equals(Object obj)
@@ -117,7 +119,7 @@
if (hashcode == 0)
{
- Class clazz = (Class)mixinClassRef.get();
+ Class<?> clazz = mixinClassRef.get();
StringBuffer sb = new StringBuffer();
if (clazz != null)
@@ -130,7 +132,7 @@
for (int i = 0 ; i < interfaceClassRefs.length ; i++)
{
sb.append(";");
- sb.append(((Class)interfaceClassRefs[i].get()).getName());
+ sb.append((interfaceClassRefs[i].get()).getName());
}
}
hashcode = sb.toString().hashCode();
@@ -179,12 +181,12 @@
private void readObject(java.io.ObjectInputStream in) throws IOException, ClassNotFoundException
{
construction = (String)in.readObject();
- mixinClassRef = new WeakReference<Class>((Class)in.readObject());
- Class[] ifs = (Class[])in.readObject();
+ mixinClassRef = new WeakReference<Class<?>>((Class<?>)in.readObject());
+ Class<?>[] ifs = (Class[])in.readObject();
interfaceClassRefs = new WeakReference[ifs.length];
for (int i = 0 ; i < ifs.length ; i++)
{
- interfaceClassRefs[i] = new WeakReference<Class>(ifs[i]);
+ interfaceClassRefs[i] = new WeakReference<Class<?>>(ifs[i]);
}
hashcode = in.readInt();
}
Modified: projects/aop/trunk/aop/src/main/org/jboss/aop/proxy/container/AOPProxyFactoryParameters.java
===================================================================
--- projects/aop/trunk/aop/src/main/org/jboss/aop/proxy/container/AOPProxyFactoryParameters.java 2008-03-13 22:11:06 UTC (rev 70848)
+++ projects/aop/trunk/aop/src/main/org/jboss/aop/proxy/container/AOPProxyFactoryParameters.java 2008-03-13 22:55:26 UTC (rev 70849)
@@ -31,11 +31,11 @@
*/
public class AOPProxyFactoryParameters
{
- private Class proxiedClass;
+ private Class<?> proxiedClass;
private Object target;
private MetaData metaData;
private boolean metaDataHasInstanceLevelData;
- private Class[] interfaces;
+ private Class<?>[] interfaces;
private AOPProxyFactoryMixin[] mixins;
private boolean objectAsSuperClass;
private SimpleMetaData simpleMetaData;
@@ -47,16 +47,16 @@
}
public AOPProxyFactoryParameters(
- Class proxiedClass,
+ Class<?> proxiedClass,
Object target,
- Class[] interfaces,
+ Class<?>[] interfaces,
AOPProxyFactoryMixin[] mixins,
MetaData metaData,
boolean metaDataHasInstanceLevelData,
boolean objectAsSuperClass,
SimpleMetaData simpleMetaData,
ContainerCache containerCache,
- Class[] ctorSignature,
+ Class<?>[] ctorSignature,
Object[] ctorArguments)
{
this.proxiedClass = proxiedClass;
@@ -71,12 +71,12 @@
setCtor(ctorSignature, ctorArguments);
}
- public Class[] getInterfaces()
+ public Class<?>[] getInterfaces()
{
return interfaces;
}
- public void setInterfaces(Class[] interfaces)
+ public void setInterfaces(Class<?>[] interfaces)
{
this.interfaces = interfaces;
}
@@ -101,12 +101,12 @@
this.objectAsSuperClass = objectAsSuperClass;
}
- public Class getProxiedClass()
+ public Class<?> getProxiedClass()
{
return proxiedClass;
}
- public void setProxiedClass(Class proxiedClass)
+ public void setProxiedClass(Class<?> proxiedClass)
{
this.proxiedClass = proxiedClass;
}
@@ -166,7 +166,7 @@
this.metaDataHasInstanceLevelData = metaDataHasInstanceLevelData;
}
- public void setCtor(Class[] ctorSignature, Object[] ctorArguments)
+ public void setCtor(Class<?>[] ctorSignature, Object[] ctorArguments)
{
boolean haveSig = (ctorSignature != null && ctorSignature.length > 0);
boolean haveArgs = (ctorArguments != null && ctorArguments.length > 0);
@@ -187,10 +187,10 @@
public static class Ctor
{
- Class[] signature;
+ Class<?>[] signature;
Object[] arguments;
- public Ctor(Class[] signature, Object[] arguments)
+ public Ctor(Class<?>[] signature, Object[] arguments)
{
this.signature = signature;
this.arguments = arguments;
@@ -201,7 +201,7 @@
return arguments;
}
- public Class[] getSignature()
+ public Class<?>[] getSignature()
{
return signature;
}
Modified: projects/aop/trunk/aop/src/main/org/jboss/aop/proxy/container/ClassProxyContainer.java
===================================================================
--- projects/aop/trunk/aop/src/main/org/jboss/aop/proxy/container/ClassProxyContainer.java 2008-03-13 22:11:06 UTC (rev 70848)
+++ projects/aop/trunk/aop/src/main/org/jboss/aop/proxy/container/ClassProxyContainer.java 2008-03-13 22:55:26 UTC (rev 70849)
@@ -25,7 +25,6 @@
import java.security.PrivilegedAction;
import java.util.ArrayList;
import java.util.Arrays;
-import java.util.Iterator;
import java.lang.reflect.Method;
import org.jboss.aop.Advisor;
@@ -57,15 +56,15 @@
protected void createConstructorTables()
{
- Class useClass = clazz;
+ Class<?> useClass = clazz;
if (clazz.getName().startsWith(ContainerProxyFactory.PROXY_NAME_PREFIX) && clazz != null && clazz.getSuperclass() != null)
{
useClass = clazz.getSuperclass();
}
if (useClass != null)
{
- final Class theUseClass = useClass;
- AccessController.doPrivileged(new PrivilegedAction()
+ final Class<?> theUseClass = useClass;
+ AccessController.doPrivileged(new PrivilegedAction<Object>()
{
public Object run()
{
@@ -89,7 +88,7 @@
{
Method[] declaredMethods = clazz.getMethods();
- Class superclass = clazz.getSuperclass();
+ Class<?> superclass = clazz.getSuperclass();
for (int i = 0; i < declaredMethods.length; i++)
{
Method method = declaredMethods[i];
@@ -111,16 +110,15 @@
for (int i = 0; i < interfaceIntroductions.size(); ++i)
{
- InterfaceIntroduction ii = (InterfaceIntroduction) interfaceIntroductions.get(i);
+ InterfaceIntroduction ii = interfaceIntroductions.get(i);
String[] intf = ii.getInterfaces();
addMethodsFromInterfaces(intf);
- ArrayList mixins = ii.getMixins();
+ ArrayList<InterfaceIntroduction.Mixin> mixins = ii.getMixins();
if (mixins.size() > 0)
{
- for (Iterator it = mixins.iterator() ; it.hasNext() ;)
+ for (InterfaceIntroduction.Mixin mixin : mixins)
{
- InterfaceIntroduction.Mixin mixin = (InterfaceIntroduction.Mixin)it.next();
String[] mintf = mixin.getInterfaces();
addMethodsFromInterfaces(mintf);
}
@@ -139,7 +137,7 @@
for (int j = 0; intf != null && j < intf.length; ++j)
{
// FIXME ClassLoader - why should the class be visible from the context classloader?
- Class iface = cl.loadClass(intf[j]);
+ Class<?> iface = cl.loadClass(intf[j]);
Method[] ifaceMethods = iface.getMethods();
for (int k = 0; k < ifaceMethods.length; k++)
{
@@ -165,7 +163,7 @@
return ia;
}
- public void initialise(Class proxiedClass)
+ public void initialise(Class<?> proxiedClass)
{
setClass(proxiedClass);
((ProxyAdvisorDomain)manager).attachAdvisor();
Modified: projects/aop/trunk/aop/src/main/org/jboss/aop/proxy/container/ContainerCache.java
===================================================================
--- projects/aop/trunk/aop/src/main/org/jboss/aop/proxy/container/ContainerCache.java 2008-03-13 22:11:06 UTC (rev 70848)
+++ projects/aop/trunk/aop/src/main/org/jboss/aop/proxy/container/ContainerCache.java 2008-03-13 22:55:26 UTC (rev 70849)
@@ -41,7 +41,7 @@
{
private static volatile int counter;
public static final Object mapLock = new Object();
- private static WeakHashMap<Class, HashMap<String, ClassProxyContainer>> containerCache = new WeakHashMap<Class, HashMap<String, ClassProxyContainer>>();
+ private static WeakHashMap<Class<?>, HashMap<String, ClassProxyContainer>> containerCache = new WeakHashMap<Class<?>, HashMap<String, ClassProxyContainer>>();
private AspectManager manager;
private ContainerProxyCacheKey key;
@@ -49,14 +49,14 @@
private Advisor classAdvisor;
private InstanceProxyContainer instanceContainer;
boolean isClassProxyContainer;
- Class[] interfaces;
+ Class<?>[] interfaces;
AOPProxyFactoryMixin[] mixins;
MetaData metaData;
boolean metaDataHasInstanceLevelData;
SimpleMetaData simpleMetaData;
- private ContainerCache(AspectManager manager, Class proxiedClass, Class[] interfaces, AOPProxyFactoryMixin[] mixins, MetaData metaData, boolean metaDataHasInstanceLevelData, SimpleMetaData simpleMetaData)
+ private ContainerCache(AspectManager manager, Class<?> proxiedClass, Class<?>[] interfaces, AOPProxyFactoryMixin[] mixins, MetaData metaData, boolean metaDataHasInstanceLevelData, SimpleMetaData simpleMetaData)
{
this.manager = manager;
this.interfaces = interfaces;
@@ -67,7 +67,7 @@
key = new ContainerProxyCacheKey(manager.getManagerFQN(), proxiedClass, interfaces, mixins, metaData);
}
- public static ContainerCache initialise(AspectManager manager, Class proxiedClass, MetaData metaData, boolean metaDataHasInstanceLevelData)
+ public static ContainerCache initialise(AspectManager manager, Class<?> proxiedClass, MetaData metaData, boolean metaDataHasInstanceLevelData)
{
return initialise(manager, proxiedClass, null, null, metaData, metaDataHasInstanceLevelData, null);
}
@@ -84,7 +84,7 @@
params.getSimpleMetaData());
}
- private static ContainerCache initialise(AspectManager manager, Class proxiedClass, Class[] interfaces, AOPProxyFactoryMixin[] mixins, MetaData metaData, boolean metaDataHasInstanceLevelData, SimpleMetaData simpleMetaData)
+ private static ContainerCache initialise(AspectManager manager, Class<?> proxiedClass, Class<?>[] interfaces, AOPProxyFactoryMixin[] mixins, MetaData metaData, boolean metaDataHasInstanceLevelData, SimpleMetaData simpleMetaData)
{
ContainerCache factory = new ContainerCache(manager, proxiedClass, interfaces, mixins, metaData, metaDataHasInstanceLevelData, simpleMetaData);
synchronized (mapLock)
@@ -221,7 +221,7 @@
return null;
}
- Class proxiedClass = classAdvisor.getClazz();
+ Class<?> proxiedClass = classAdvisor.getClazz();
if (proxiedClass == null)
{
proxiedClass = Object.class;
@@ -241,8 +241,8 @@
{
for (int i = 0 ; i < mixins.length && mixins != null; i++)
{
- Class[] mixinInterfaces = mixins[i].getInterfaces();
- Class mixinClass = mixins[i].getMixin();
+ Class<?>[] mixinInterfaces = mixins[i].getInterfaces();
+ Class<?> mixinClass = mixins[i].getMixin();
if (mixinInterfaces == null)
{
@@ -259,7 +259,7 @@
}
}
- private String[] getClassNames(Class[] classes)
+ private String[] getClassNames(Class<?>[] classes)
{
if (classes == null)
{
Modified: projects/aop/trunk/aop/src/main/org/jboss/aop/proxy/container/ContainerCacheUtil.java
===================================================================
--- projects/aop/trunk/aop/src/main/org/jboss/aop/proxy/container/ContainerCacheUtil.java 2008-03-13 22:11:06 UTC (rev 70848)
+++ projects/aop/trunk/aop/src/main/org/jboss/aop/proxy/container/ContainerCacheUtil.java 2008-03-13 22:55:26 UTC (rev 70849)
@@ -37,28 +37,28 @@
* Takes a Class[] containing interface classes, and returns an array of weak references to thos class
* objects, sorted alphabetically by name.
*/
- public static WeakReference<Class>[] getSortedWeakReferenceForInterfaces(Class[] ifaces)
+ public static WeakReference<Class<?>>[] getSortedWeakReferenceForInterfaces(Class<?>[] ifaces)
{
if (ifaces == null)
{
return null;
}
- WeakReference<Class>[] interfaces = new WeakReference[ifaces.length];
+ WeakReference<Class<?>>[] interfaces = new WeakReference[ifaces.length];
for (int i = 0 ; i < ifaces.length ; i++)
{
- interfaces[i] = new WeakReference<Class>(ifaces[i]);
+ interfaces[i] = new WeakReference<Class<?>>(ifaces[i]);
}
Arrays.sort(interfaces, Alphabetical.singleton);
return interfaces;
}
- public static boolean compareClassRefs(WeakReference<Class> my, WeakReference<Class> other)
+ public static boolean compareClassRefs(WeakReference<Class<?>> my, WeakReference<Class<?>> other)
{
- Class myClass = my.get();
- Class otherClass = other.get();
+ Class<?> myClass = my.get();
+ Class<?> otherClass = other.get();
if (myClass == null || otherClass == null)
{
@@ -72,7 +72,7 @@
return true;
}
- public static boolean compareInterfaceRefs(WeakReference<Class>[] my, WeakReference<Class>[] other)
+ public static boolean compareInterfaceRefs(WeakReference<Class<?>>[] my, WeakReference<Class<?>>[] other)
{
if ((my == null && other != null) ||
(my == null && other != null))
@@ -89,8 +89,8 @@
for (int i = 0 ; i < my.length ; i++)
{
- Class myIf = my[i].get();
- Class otherIf = other[i].get();
+ Class<?> myIf = my[i].get();
+ Class<?> otherIf = other[i].get();
if (!myIf.equals(otherIf))
{
@@ -102,14 +102,14 @@
return true;
}
- static class Alphabetical implements Comparator
+ static class Alphabetical implements Comparator<WeakReference<Class<?>>>
{
static Alphabetical singleton = new Alphabetical();
- public int compare(Object o1, Object o2)
+ public int compare(WeakReference<Class<?>> o1, WeakReference<Class<?>> o2)
{
- String name1 = ((WeakReference<Class>)o1).get().getName();
- String name2 = ((WeakReference<Class>)o2).get().getName();
+ String name1 = o1.get().getName();
+ String name2 = o2.get().getName();
return (name1).compareTo(name2);
}
}
Modified: projects/aop/trunk/aop/src/main/org/jboss/aop/proxy/container/ContainerProxyCacheKey.java
===================================================================
--- projects/aop/trunk/aop/src/main/org/jboss/aop/proxy/container/ContainerProxyCacheKey.java 2008-03-13 22:11:06 UTC (rev 70848)
+++ projects/aop/trunk/aop/src/main/org/jboss/aop/proxy/container/ContainerProxyCacheKey.java 2008-03-13 22:55:26 UTC (rev 70849)
@@ -38,12 +38,12 @@
public class ContainerProxyCacheKey implements Serializable
{
private static final long serialVersionUID = 8758283842273747310L;
- private static final WeakReference<Class>[] EMTPY_WR_ARRAY = new WeakReference[0];
+ private static final WeakReference<Class<?>>[] EMTPY_WR_ARRAY = new WeakReference[0];
private static final AOPProxyFactoryMixin[] EMPTY_MIXIN_ARRAY = new AOPProxyFactoryMixin[0];
private String managerFqn;
- private WeakReference<Class> clazzRef;
- private WeakReference<Class>[] addedInterfaces = EMTPY_WR_ARRAY;
+ private WeakReference<Class<?>> clazzRef;
+ private WeakReference<Class<?>>[] addedInterfaces = EMTPY_WR_ARRAY;
private MetaData metaData;
/** In case we are serializing with an unserializable MetaData in the same JVM, give a chance to make sure that the metaData is the same */
@@ -53,25 +53,25 @@
private int hashcode = 0;
private GUID guid = MarshalledContainerProxy.GUID;
- public ContainerProxyCacheKey(String managerFqn, Class clazz)
+ public ContainerProxyCacheKey(String managerFqn, Class<?> clazz)
{
- this.clazzRef = new WeakReference<Class>(clazz);
+ this.clazzRef = new WeakReference<Class<?>>(clazz);
this.managerFqn = managerFqn;
}
- public ContainerProxyCacheKey(Class clazz)
+ public ContainerProxyCacheKey(Class<?> clazz)
{
this("/", clazz);
}
- public ContainerProxyCacheKey(String managerFqn, Class clazz, Class[] addedInterfaces, MetaData metaData)
+ public ContainerProxyCacheKey(String managerFqn, Class<?> clazz, Class<?>[] addedInterfaces, MetaData metaData)
{
this(managerFqn, clazz);
this.addedInterfaces = ContainerCacheUtil.getSortedWeakReferenceForInterfaces(addedInterfaces);
this.metaData = metaData;
}
- public ContainerProxyCacheKey(String managerFqn, Class clazz, Class[] addedInterfaces, AOPProxyFactoryMixin[] addedMixins, MetaData metaData)
+ public ContainerProxyCacheKey(String managerFqn, Class<?> clazz, Class<?>[] addedInterfaces, AOPProxyFactoryMixin[] addedMixins, MetaData metaData)
{
this(managerFqn, clazz, addedInterfaces, metaData);
@@ -82,7 +82,7 @@
}
}
- public Class getClazz()
+ public Class<?> getClazz()
{
return clazzRef.get();
}
@@ -144,7 +144,7 @@
if (hashcode == 0)
{
- Class clazz = (Class)clazzRef.get();
+ Class<?> clazz = clazzRef.get();
StringBuffer sb = new StringBuffer();
sb.append(managerFqn);
if (clazz != null)
@@ -157,7 +157,7 @@
for (int i = 0 ; i < addedInterfaces.length ; i++)
{
sb.append(";");
- sb.append(((Class)addedInterfaces[i].get()).getName());
+ sb.append((addedInterfaces[i].get()).getName());
}
}
@@ -175,7 +175,7 @@
public String toString()
{
StringBuffer buf = new StringBuffer("ContainerProxyCache");
- buf.append(((Class)clazzRef.get()).getName());
+ buf.append((clazzRef.get()).getName());
buf.append(";interfaces=");
if (addedInterfaces == null)
{
@@ -279,7 +279,7 @@
out.writeUTF(managerFqn);
out.writeObject(guid);
out.writeObject(clazzRef.get());
- Class[] ifs = null;
+ Class<?>[] ifs = null;
if (addedInterfaces != null)
{
ifs = new Class[addedInterfaces.length];
@@ -307,14 +307,14 @@
{
managerFqn = in.readUTF();
guid = (GUID)in.readObject();
- clazzRef = new WeakReference<Class>((Class)in.readObject());
- Class[] ifs = (Class[])in.readObject();
+ clazzRef = new WeakReference<Class<?>>((Class<?>)in.readObject());
+ Class<?>[] ifs = (Class[])in.readObject();
if (ifs != null)
{
addedInterfaces = new WeakReference[ifs.length];
for (int i = 0 ; i < ifs.length ; i++)
{
- addedInterfaces[i] = new WeakReference<Class>(ifs[i]);
+ addedInterfaces[i] = new WeakReference<Class<?>>(ifs[i]);
}
}
metaData = (MetaData)in.readObject();
@@ -323,14 +323,14 @@
hashcode = in.readInt();
}
- static class MixinAlphabetical implements Comparator
+ static class MixinAlphabetical implements Comparator<AOPProxyFactoryMixin>
{
static MixinAlphabetical singleton = new MixinAlphabetical();
- public int compare(Object o1, Object o2)
+ public int compare(AOPProxyFactoryMixin o1, AOPProxyFactoryMixin o2)
{
- String name1 = ((AOPProxyFactoryMixin)o1).getMixin().getName();
- String name2 = ((AOPProxyFactoryMixin)o2).getMixin().getName();
+ String name1 = o1.getMixin().getName();
+ String name2 = o2.getMixin().getName();
return (name1).compareTo(name2);
}
}
Modified: projects/aop/trunk/aop/src/main/org/jboss/aop/proxy/container/GeneratedAOPProxyFactory.java
===================================================================
--- projects/aop/trunk/aop/src/main/org/jboss/aop/proxy/container/GeneratedAOPProxyFactory.java 2008-03-13 22:11:06 UTC (rev 70848)
+++ projects/aop/trunk/aop/src/main/org/jboss/aop/proxy/container/GeneratedAOPProxyFactory.java 2008-03-13 22:55:26 UTC (rev 70849)
@@ -89,7 +89,7 @@
{
try
{
- Class proxyClass = null;
+ Class<?> proxyClass = null;
boolean isAdvised = Advised.class.isAssignableFrom(params.getProxiedClass());
@@ -125,19 +125,19 @@
}
}
- private Class generateProxy(AOPProxyFactoryParameters params) throws Exception
+ private Class<?> generateProxy(AOPProxyFactoryParameters params) throws Exception
{
- Class proxyClass = ContainerProxyFactory.getProxyClass(params.isObjectAsSuperClass(), params.getContainerCache().getKey(), params.getContainerCache().getAdvisor());
+ Class<?> proxyClass = ContainerProxyFactory.getProxyClass(params.isObjectAsSuperClass(), params.getContainerCache().getKey(), params.getContainerCache().getAdvisor());
return proxyClass;
}
- private Object instantiateAndConfigureProxy(Class proxyClass, AOPProxyFactoryParameters params) throws Exception
+ private Object instantiateAndConfigureProxy(Class<?> proxyClass, AOPProxyFactoryParameters params) throws Exception
{
AspectManaged proxy;
if (params.getCtor() != null)
{
- Constructor ctor = proxyClass.getConstructor(params.getCtor().getSignature());
+ Constructor<?> ctor = proxyClass.getConstructor(params.getCtor().getSignature());
proxy = (AspectManaged)ctor.newInstance(params.getCtor().getArguments());
}
else
Modified: projects/aop/trunk/aop/src/test/org/jboss/test/aop/annotationoverride/AnnotationOverrideTestCase.java
===================================================================
--- projects/aop/trunk/aop/src/test/org/jboss/test/aop/annotationoverride/AnnotationOverrideTestCase.java 2008-03-13 22:11:06 UTC (rev 70848)
+++ projects/aop/trunk/aop/src/test/org/jboss/test/aop/annotationoverride/AnnotationOverrideTestCase.java 2008-03-13 22:55:26 UTC (rev 70849)
@@ -51,7 +51,7 @@
* @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
* @version $Revision: 1.1 $
*/
- at SuppressWarnings({"unused", "unchecked", "cast"})
+ at SuppressWarnings({"unused", "unchecked"})
public class AnnotationOverrideTestCase extends AOPTestWithSetup
{
public AnnotationOverrideTestCase(String arg0)
@@ -83,14 +83,22 @@
container.setClass(Proxied.class);
container.initializeClassContainer();
- Some some = (Some)container.resolveAnnotation(Some.class);
+ Some some = container.resolveTypedAnnotation(Some.class);
assertNotNull(some);
- Other other = (Other)container.resolveAnnotation(Other.class);
+ some = (Some)container.resolveAnnotation(Some.class);
+ assertNotNull(some);
+ Other other = container.resolveTypedAnnotation(Other.class);
assertNull(other);
+ other = (Other)container.resolveAnnotation(Other.class);
+ assertNull(other);
Method m = Proxied.class.getDeclaredMethod("method");
+ some = container.resolveTypedAnnotation(m, Some.class);
+ assertNull(some);
some = (Some)container.resolveAnnotation(m, Some.class);
assertNull(some);
+ other = container.resolveTypedAnnotation(m, Other.class);
+ assertNotNull(other);
other = (Other)container.resolveAnnotation(m, Other.class);
assertNotNull(other);
assertEquals("method", other.value());
@@ -114,84 +122,132 @@
setupMetaData(advisor, c, m, f, classAnnotations, ctorAnnotations, methodAnnotations, fieldAnnotations);
}
- Some some = (Some)advisor.resolveAnnotation(Some.class);
+ Some some = advisor.resolveTypedAnnotation(Some.class);
assertNotNull(some);
- Other other = (Other)advisor.resolveAnnotation(Other.class);
+ some = (Some)advisor.resolveAnnotation(Some.class);
+ assertNotNull(some);
+ Other other = advisor.resolveTypedAnnotation(Other.class);
assertNull(other);
+ other = (Other)advisor.resolveAnnotation(Other.class);
+ assertNull(other);
- SomeAnnotation someAnn = (SomeAnnotation)advisor.resolveAnnotation(SomeAnnotation.class);
+ SomeAnnotation someAnn = advisor.resolveTypedAnnotation(SomeAnnotation.class);
assertNotNull(someAnn);
- OtherAnnotation otherAnn = (OtherAnnotation)advisor.resolveAnnotation(OtherAnnotation.class);
+ someAnn = (SomeAnnotation)advisor.resolveAnnotation(SomeAnnotation.class);
+ assertNotNull(someAnn);
+ OtherAnnotation otherAnn = advisor.resolveTypedAnnotation(OtherAnnotation.class);
assertNull(otherAnn);
+ otherAnn = (OtherAnnotation)advisor.resolveAnnotation(OtherAnnotation.class);
+ assertNull(otherAnn);
if (useMetaData)
{
- SomeMD someMD = (SomeMD)advisor.resolveAnnotation(SomeMD.class);
+ SomeMD someMD = advisor.resolveTypedAnnotation(SomeMD.class);
assertNotNull(someMD);
- OtherMD otherMD = (OtherMD)advisor.resolveAnnotation(OtherMD.class);
+ someMD = (SomeMD)advisor.resolveAnnotation(SomeMD.class);
+ assertNotNull(someMD);
+ OtherMD otherMD = advisor.resolveTypedAnnotation(OtherMD.class);
assertNull(otherMD);
+ otherMD = (OtherMD)advisor.resolveAnnotation(OtherMD.class);
+ assertNull(otherMD);
}
+ some = advisor.resolveTypedAnnotation(m, Some.class);
+ assertNull(some);
some = (Some)advisor.resolveAnnotation(m, Some.class);
assertNull(some);
+ other = advisor.resolveTypedAnnotation(m, Other.class);
+ assertNotNull(other);
other = (Other)advisor.resolveAnnotation(m, Other.class);
assertNotNull(other);
assertEquals("method", other.value());
+ someAnn = advisor.resolveTypedAnnotation(m, SomeAnnotation.class);
+ assertNull(some);
someAnn = (SomeAnnotation)advisor.resolveAnnotation(m, SomeAnnotation.class);
assertNull(some);
+ otherAnn = advisor.resolveTypedAnnotation(m, OtherAnnotation.class);
+ assertNotNull(otherAnn);
otherAnn = (OtherAnnotation)advisor.resolveAnnotation(m, OtherAnnotation.class);
assertNotNull(otherAnn);
assertEquals("method", otherAnn.value());
if (useMetaData)
{
- SomeMD someMD = (SomeMD)advisor.resolveAnnotation(m, SomeMD.class);
+ SomeMD someMD = advisor.resolveTypedAnnotation(m, SomeMD.class);
assertNull(someMD);
- OtherMD otherMD = (OtherMD)advisor.resolveAnnotation(m, OtherMD.class);
+ someMD = (SomeMD)advisor.resolveAnnotation(m, SomeMD.class);
+ assertNull(someMD);
+ OtherMD otherMD = advisor.resolveTypedAnnotation(m, OtherMD.class);
assertNotNull(otherMD);
+ otherMD = (OtherMD)advisor.resolveAnnotation(m, OtherMD.class);
+ assertNotNull(otherMD);
assertEquals("method", otherMD.value());
}
+ some = advisor.resolveTypedAnnotation(f, Some.class);
+ assertNull(some);
some = (Some)advisor.resolveAnnotation(f, Some.class);
assertNull(some);
+ other = advisor.resolveTypedAnnotation(f, Other.class);
+ assertNotNull(other);
other = (Other)advisor.resolveAnnotation(f, Other.class);
assertNotNull(other);
assertEquals("field", other.value());
+ someAnn = advisor.resolveTypedAnnotation(f, SomeAnnotation.class);
+ assertNull(some);
someAnn = (SomeAnnotation)advisor.resolveAnnotation(f, SomeAnnotation.class);
assertNull(some);
+ otherAnn = advisor.resolveTypedAnnotation(f, OtherAnnotation.class);
+ assertNotNull(other);
otherAnn = (OtherAnnotation)advisor.resolveAnnotation(f, OtherAnnotation.class);
assertNotNull(other);
assertEquals("field", other.value());
if (useMetaData)
{
- SomeMD someMD = (SomeMD)advisor.resolveAnnotation(f, SomeMD.class);
+ SomeMD someMD = advisor.resolveTypedAnnotation(f, SomeMD.class);
assertNull(someMD);
- OtherMD otherMD = (OtherMD)advisor.resolveAnnotation(f, OtherMD.class);
+ someMD = (SomeMD)advisor.resolveAnnotation(f, SomeMD.class);
+ assertNull(someMD);
+ OtherMD otherMD = advisor.resolveTypedAnnotation(f, OtherMD.class);
assertNotNull(otherMD);
+ otherMD = (OtherMD)advisor.resolveAnnotation(f, OtherMD.class);
+ assertNotNull(otherMD);
assertEquals("field", otherMD.value());
}
+ some = advisor.resolveTypedAnnotation(c, Some.class);
+ assertNull(some);
some = (Some)advisor.resolveAnnotation(c, Some.class);
assertNull(some);
+ other = advisor.resolveTypedAnnotation(c, Other.class);
+ assertNotNull(other);
other = (Other)advisor.resolveAnnotation(c, Other.class);
assertNotNull(other);
assertEquals("ctor", other.value());
+ someAnn = advisor.resolveTypedAnnotation(c, SomeAnnotation.class);
+ assertNull(some);
someAnn = (SomeAnnotation)advisor.resolveAnnotation(c, SomeAnnotation.class);
assertNull(some);
+ otherAnn = advisor.resolveTypedAnnotation(c, OtherAnnotation.class);
+ assertNotNull(other);
otherAnn = (OtherAnnotation)advisor.resolveAnnotation(c, OtherAnnotation.class);
assertNotNull(other);
assertEquals("ctor", other.value());
if (useMetaData)
{
- SomeMD someMD = (SomeMD)advisor.resolveAnnotation(c, SomeMD.class);
+ SomeMD someMD = advisor.resolveTypedAnnotation(c, SomeMD.class);
assertNull(someMD);
- OtherMD otherMD = (OtherMD)advisor.resolveAnnotation(c, OtherMD.class);
+ someMD = (SomeMD)advisor.resolveAnnotation(c, SomeMD.class);
+ assertNull(someMD);
+ OtherMD otherMD = advisor.resolveTypedAnnotation(c, OtherMD.class);
assertNotNull(otherMD);
+ otherMD = (OtherMD)advisor.resolveAnnotation(c, OtherMD.class);
+ assertNotNull(otherMD);
assertEquals("ctor", otherMD.value());
}
Modified: projects/aop/trunk/aop/src/test/org/jboss/test/aop/instanceofannotated/InstanceOfAnnotatedTester.java
===================================================================
--- projects/aop/trunk/aop/src/test/org/jboss/test/aop/instanceofannotated/InstanceOfAnnotatedTester.java 2008-03-13 22:11:06 UTC (rev 70848)
+++ projects/aop/trunk/aop/src/test/org/jboss/test/aop/instanceofannotated/InstanceOfAnnotatedTester.java 2008-03-13 22:55:26 UTC (rev 70849)
@@ -177,29 +177,29 @@
Class introducedPOJO = IntroducedPOJO.class;
ClassAdvisor advisor = AspectManager.instance().getAdvisor(introducedPOJO);
- Introduced introduced = advisor.resolveAnnotation(Introduced.class);
+ Introduced introduced = advisor.resolveTypedAnnotation(Introduced.class);
assertNotNull("Class did not have the @Introduced annotation", introduced);
Constructor con = introducedPOJO.getConstructors()[0];
- introduced = advisor.resolveAnnotation(con, Introduced.class);
+ introduced = advisor.resolveTypedAnnotation(con, Introduced.class);
assertNotNull("Constructor did not have the @Introduced annotation", introduced);
- Introduced2 introduced2 = advisor.resolveAnnotation(con, Introduced2.class);
+ Introduced2 introduced2 = advisor.resolveTypedAnnotation(con, Introduced2.class);
assertNotNull("Constructor did not have the @Introduced2 annotation", introduced2);
- Introduced3 introduced3 = advisor.resolveAnnotation(con, Introduced3.class);
+ Introduced3 introduced3 = advisor.resolveTypedAnnotation(con, Introduced3.class);
assertNull("Constructor has the @Introduced3 annotation", introduced3);
Field field = introducedPOJO.getField("field");
- introduced = advisor.resolveAnnotation(field, Introduced.class);
+ introduced = advisor.resolveTypedAnnotation(field, Introduced.class);
assertNotNull("Field did not have the @Introduced annotation", introduced);
- introduced2 = advisor.resolveAnnotation(field, Introduced2.class);
+ introduced2 = advisor.resolveTypedAnnotation(field, Introduced2.class);
assertNotNull("Field did not have the @Introduced2 annotation", introduced2);
Method method = introducedPOJO.getMethod("someMethod", new Class[]{Type.class, Type.class});
- introduced = advisor.resolveAnnotation(method, Introduced.class);
+ introduced = advisor.resolveTypedAnnotation(method, Introduced.class);
assertNotNull("Method did not have the @Introduced annotation", introduced);
- introduced2 = advisor.resolveAnnotation(method, Introduced2.class);
+ introduced2 = advisor.resolveTypedAnnotation(method, Introduced2.class);
assertNotNull("Method did not have the @Introduced2 annotation", introduced2);
- introduced3 = advisor.resolveAnnotation(method, Introduced3.class);
+ introduced3 = advisor.resolveTypedAnnotation(method, Introduced3.class);
assertNull("Method has the @Introduced3 annotation", introduced3);
}
Modified: projects/aop/trunk/aspects/src/main/org/jboss/aspects/concurrent/MutexAspectFactory.java
===================================================================
--- projects/aop/trunk/aspects/src/main/org/jboss/aspects/concurrent/MutexAspectFactory.java 2008-03-13 22:11:06 UTC (rev 70848)
+++ projects/aop/trunk/aspects/src/main/org/jboss/aspects/concurrent/MutexAspectFactory.java 2008-03-13 22:55:26 UTC (rev 70849)
@@ -52,7 +52,7 @@
public Object createPerJoinpoint(Advisor advisor, Joinpoint jp)
{
MethodJoinpoint mj = (MethodJoinpoint)jp;
- MutexLocked props = (MutexLocked)advisor.resolveAnnotation(mj.getMethod(), MutexLocked.class);
+ MutexLocked props = (MutexLocked)advisor.resolveTypedAnnotation(mj.getMethod(), MutexLocked.class);
if (props.timeout() < 0)
{
return new MutexAspect.BlockingMutex();
More information about the jboss-cvs-commits
mailing list