[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