[jboss-cvs] JBossAS SVN: r98882 - branches/JBoss_AOP_1_5_5_GA_CP/aop/src/main/org/jboss/aop/annotation.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Wed Dec 23 01:38:07 EST 2009
Author: jiwils
Date: 2009-12-23 01:38:07 -0500 (Wed, 23 Dec 2009)
New Revision: 98882
Modified:
branches/JBoss_AOP_1_5_5_GA_CP/aop/src/main/org/jboss/aop/annotation/AnnotationElement.java
branches/JBoss_AOP_1_5_5_GA_CP/aop/src/main/org/jboss/aop/annotation/PortableAnnotationElement.java
Log:
Fix for JBPAPP-3258. Resolved issues with null fields and constructors returned by ReflectToJavassist.*ToJavassist methods.
Modified: branches/JBoss_AOP_1_5_5_GA_CP/aop/src/main/org/jboss/aop/annotation/AnnotationElement.java
===================================================================
--- branches/JBoss_AOP_1_5_5_GA_CP/aop/src/main/org/jboss/aop/annotation/AnnotationElement.java 2009-12-23 06:36:38 UTC (rev 98881)
+++ branches/JBoss_AOP_1_5_5_GA_CP/aop/src/main/org/jboss/aop/annotation/AnnotationElement.java 2009-12-23 06:38:07 UTC (rev 98882)
@@ -89,12 +89,12 @@
{
try
{
- CtConstructor ctMethod = ReflectToJavassist.constructorToJavassist(con);
- if (ctMethod == null)
+ CtConstructor ctConstructor = ReflectToJavassist.constructorToJavassist(con);
+ if (ctConstructor == null)
{
return null;
}
- MethodInfo mi = ctMethod.getMethodInfo2();
+ MethodInfo mi = ctConstructor.getMethodInfo2();
AnnotationsAttribute visible = (AnnotationsAttribute) mi.getAttribute(AnnotationsAttribute.visibleTag);
if (visible == null) return null;
@@ -119,6 +119,10 @@
try
{
CtField ctField = ReflectToJavassist.fieldToJavassist(field);
+ if (ctField == null)
+ {
+ return null;
+ }
FieldInfo mi = ctField.getFieldInfo2();
AnnotationsAttribute visible = (AnnotationsAttribute) mi.getAttribute(AnnotationsAttribute.visibleTag);
@@ -157,8 +161,9 @@
public static boolean isVisibleAnnotationPresent(Field field, Class annotation) throws Exception
{
- CtField ctMethod = ReflectToJavassist.fieldToJavassist(field);
- return isVisibleAnnotationPresent(ctMethod, annotation.getName());
+ CtField ctField = ReflectToJavassist.fieldToJavassist(field);
+ return ctField != null &&
+ isVisibleAnnotationPresent(ctField, annotation.getName());
}
public static boolean isVisibleAnnotationPresent(Class clazz, Class annotation) throws Exception
@@ -172,8 +177,9 @@
public static boolean isVisibleAnnotationPresent(Constructor con, Class annotation) throws Exception
{
- CtConstructor ctMethod = ReflectToJavassist.constructorToJavassist(con);
- return isVisibleAnnotationPresent(ctMethod, annotation.getName());
+ CtConstructor ctConstructor = ReflectToJavassist.constructorToJavassist(con);
+ return ctConstructor != null &&
+ isVisibleAnnotationPresent(ctConstructor, annotation.getName());
}
Modified: branches/JBoss_AOP_1_5_5_GA_CP/aop/src/main/org/jboss/aop/annotation/PortableAnnotationElement.java
===================================================================
--- branches/JBoss_AOP_1_5_5_GA_CP/aop/src/main/org/jboss/aop/annotation/PortableAnnotationElement.java 2009-12-23 06:36:38 UTC (rev 98881)
+++ branches/JBoss_AOP_1_5_5_GA_CP/aop/src/main/org/jboss/aop/annotation/PortableAnnotationElement.java 2009-12-23 06:38:07 UTC (rev 98882)
@@ -49,22 +49,23 @@
public class PortableAnnotationElement
{
private static final Object[] EMPTY_OBJECT_ARRAY = new Object[0];
-
+
private static volatile boolean closingDownManager;
-
+
public static void setClosingDownManager(boolean closing)
{
- closingDownManager = closing;
+ closingDownManager = closing;
}
-
+
public static boolean isInvisibleAnnotationPresent(Field field, String annotation) throws Exception
{
if (closingDownManager)
{
return false;
}
- CtField ctMethod = ReflectToJavassist.fieldToJavassist(field);
- return AnnotationElement.isInvisibleAnnotationPresent(ctMethod, annotation);
+ CtField ctField = ReflectToJavassist.fieldToJavassist(field);
+ return ctField != null && AnnotationElement.
+ isInvisibleAnnotationPresent(ctField, annotation);
}
public static boolean isInvisibleAnnotationPresent(CtField field, String annotation)
@@ -143,7 +144,8 @@
return false;
}
CtField ctField = ReflectToJavassist.fieldToJavassist(field);
- return AnnotationElement.isAnyAnnotationPresent(ctField, annotation);
+ return ctField != null && AnnotationElement.
+ isAnyAnnotationPresent(ctField, annotation);
}
@@ -189,8 +191,9 @@
{
return false;
}
- CtConstructor ctMethod = ReflectToJavassist.constructorToJavassist(con);
- return AnnotationElement.isInvisibleAnnotationPresent(ctMethod, annotation);
+ CtConstructor ctConstructor = ReflectToJavassist.constructorToJavassist(con);
+ return ctConstructor != null && AnnotationElement.
+ isInvisibleAnnotationPresent(ctConstructor, annotation);
}
public static boolean isInvisibleAnnotationPresent(CtConstructor ctMethod, String annotation)
@@ -229,9 +232,9 @@
{
return false;
}
- CtConstructor ctMethod = ReflectToJavassist.constructorToJavassist(con);
- return AnnotationElement.isAnyAnnotationPresent(ctMethod, annotation);
-
+ CtConstructor ctConstructor = ReflectToJavassist.constructorToJavassist(con);
+ return ctConstructor != null && AnnotationElement.
+ isAnyAnnotationPresent(ctConstructor, annotation);
}
public static boolean isAnyAnnotationPresent(CtConstructor ctMethod, String annotation)
@@ -368,8 +371,12 @@
}
try
{
- CtConstructor ctMethod = ReflectToJavassist.constructorToJavassist(con);
- MethodInfo mi = ctMethod.getMethodInfo2();
+ CtConstructor ctConstructor = ReflectToJavassist.constructorToJavassist(con);
+ if (ctConstructor == null)
+ {
+ return null;
+ }
+ MethodInfo mi = ctConstructor.getMethodInfo2();
AnnotationsAttribute invisible = (AnnotationsAttribute) mi.getAttribute(AnnotationsAttribute.invisibleTag);
@@ -392,6 +399,10 @@
try
{
CtField ctField = ReflectToJavassist.fieldToJavassist(field);
+ if (ctField == null)
+ {
+ return null;
+ }
FieldInfo mi = ctField.getFieldInfo2();
@@ -479,8 +490,9 @@
return false;
}
- CtField ctMethod = ReflectToJavassist.fieldToJavassist(field);
- return isInvisibleAnnotationPresent(ctMethod, annotation.getName());
+ CtField ctField = ReflectToJavassist.fieldToJavassist(field);
+ return ctField != null &&
+ isInvisibleAnnotationPresent(ctField, annotation.getName());
}
public static boolean isAnyAnnotationPresent(Class clazz, Class annotation) throws Exception
@@ -507,8 +519,9 @@
{
return false;
}
- CtConstructor ctMethod = ReflectToJavassist.constructorToJavassist(con);
- return isVisibleAnnotationPresent(ctMethod, annotation.getName());
+ CtConstructor ctConstructor = ReflectToJavassist.constructorToJavassist(con);
+ return ctConstructor != null &&
+ isVisibleAnnotationPresent(ctConstructor, annotation.getName());
}
public static boolean isAnyAnnotationPresent(Method method, Class annotation) throws Exception
@@ -535,8 +548,9 @@
{
return false;
}
- CtField ctMethod = ReflectToJavassist.fieldToJavassist(field);
- return isVisibleAnnotationPresent(ctMethod, annotation);
+ CtField ctField = ReflectToJavassist.fieldToJavassist(field);
+ return ctField != null &&
+ isVisibleAnnotationPresent(ctField, annotation);
}
public static boolean isVisibleAnnotationPresent(Class clazz, String annotation) throws Exception
@@ -561,8 +575,9 @@
{
return false;
}
- CtConstructor ctMethod = ReflectToJavassist.constructorToJavassist(con);
- return isVisibleAnnotationPresent(ctMethod, annotation);
+ CtConstructor ctConstructor = ReflectToJavassist.constructorToJavassist(con);
+ return ctConstructor != null &&
+ isVisibleAnnotationPresent(ctConstructor, annotation);
}
public static boolean isVisibleAnnotationPresent(Method method, String annotation) throws Exception
@@ -591,17 +606,17 @@
{
return AnnotationElement.getVisibleAnnotations(m);
}
-
+
public static Object[] getVisibleAnnotations(Field f) throws Exception
{
return AnnotationElement.getVisibleAnnotations(f);
}
-
+
public static Object[] getVisibleAnnotations(Constructor c) throws Exception
{
return AnnotationElement.getVisibleAnnotations(c);
}
-
+
public static Class getAnnotationType(Object o)
{
Class proxy = o.getClass();
More information about the jboss-cvs-commits
mailing list