[jboss-cvs] JBossAS SVN: r94414 - in projects/aop/trunk/aop/src/main: java/org/jboss/aop/advice and 11 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Tue Oct 6 10:41:26 EDT 2009


Author: kabir.khan at jboss.com
Date: 2009-10-06 10:41:25 -0400 (Tue, 06 Oct 2009)
New Revision: 94414

Modified:
   projects/aop/trunk/aop/src/main/java/org/jboss/aop/AspectXmlLoader.java
   projects/aop/trunk/aop/src/main/java/org/jboss/aop/InstanceAdvisorDelegate.java
   projects/aop/trunk/aop/src/main/java/org/jboss/aop/advice/AdviceFactory.java
   projects/aop/trunk/aop/src/main/java/org/jboss/aop/advice/GeneratedAdvisorInterceptor.java
   projects/aop/trunk/aop/src/main/java/org/jboss/aop/advice/GenericInterceptorFactory.java
   projects/aop/trunk/aop/src/main/java/org/jboss/aop/advice/ScopedInterceptorFactory.java
   projects/aop/trunk/aop/src/main/java/org/jboss/aop/advice/annotation/assignability/ArgumentContextualizer.java
   projects/aop/trunk/aop/src/main/java/org/jboss/aop/advice/annotation/assignability/DegreeAlgorithm.java
   projects/aop/trunk/aop/src/main/java/org/jboss/aop/annotation/compiler/ByteCodeAnnotationCompiler.java
   projects/aop/trunk/aop/src/main/java/org/jboss/aop/ant/AopC.java
   projects/aop/trunk/aop/src/main/java/org/jboss/aop/instrument/JoinPointGenerator.java
   projects/aop/trunk/aop/src/main/java/org/jboss/aop/instrument/JoinpointClassification.java
   projects/aop/trunk/aop/src/main/java/org/jboss/aop/instrument/OptimizedConstructionInvocations.java
   projects/aop/trunk/aop/src/main/java/org/jboss/aop/instrument/TransformerCommon.java
   projects/aop/trunk/aop/src/main/java/org/jboss/aop/joinpoint/MethodInvocation.java
   projects/aop/trunk/aop/src/main/java/org/jboss/aop/metadata/SimpleMetaData.java
   projects/aop/trunk/aop/src/main/java/org/jboss/aop/pointcut/FieldMatcher.java
   projects/aop/trunk/aop/src/main/java/org/jboss/aop/pointcut/PointcutStats.java
   projects/aop/trunk/aop/src/main/java/org/jboss/aop/proxy/container/ContainerCacheUtil.java
   projects/aop/trunk/aop/src/main/java/org/jboss/aop/proxy/container/ContainerProxyCacheKey.java
   projects/aop/trunk/aop/src/main/java/org/jboss/aop/proxy/container/ContainerProxyMethodInvocation.java
   projects/aop/trunk/aop/src/main/java/org/jboss/aop/proxy/container/GeneratedAOPProxyFactory.java
   projects/aop/trunk/aop/src/main/java/org/jboss/aop/standalone/Compiler.java
   projects/aop/trunk/aop/src/main/java/org/jboss/aop/util/MethodHashing.java
   projects/aop/trunk/aop/src/main/resources/findbugs/exclude.xml
Log:
[JBAOP-757] Initial bug fixes and findbugs excludes

Modified: projects/aop/trunk/aop/src/main/java/org/jboss/aop/AspectXmlLoader.java
===================================================================
--- projects/aop/trunk/aop/src/main/java/org/jboss/aop/AspectXmlLoader.java	2009-10-06 14:29:47 UTC (rev 94413)
+++ projects/aop/trunk/aop/src/main/java/org/jboss/aop/AspectXmlLoader.java	2009-10-06 14:41:25 UTC (rev 94414)
@@ -714,7 +714,7 @@
    {
       String name = getName(pointcut, "prepare");
       String expr = pointcut.getAttribute("expr");
-      if (expr != null && expr.trim().equals(""))
+      if (expr == null || (expr != null && expr.trim().equals("")))
       {
          throw new RuntimeException("pointcut declaration must have an expr associated with it");
       }
@@ -798,13 +798,13 @@
    public AnnotationIntroduction loadAnnotationIntroduction(Element pointcut) throws Exception
    {
       String expr = pointcut.getAttribute("expr");
-      if (expr != null && expr.trim().equals(""))
+      if (expr == null || (expr != null && expr.trim().equals("")))
       {
          throw new RuntimeException("annotation introduction must have an expr attribute");
       }
 
       String invisible = pointcut.getAttribute("invisible");
-      if (invisible != null && expr.trim().equals(""))
+      if (invisible == null || (invisible != null && expr.trim().equals("")))
       {
          throw new RuntimeException("annotation introduction must have an invisible attribute");
       }

Modified: projects/aop/trunk/aop/src/main/java/org/jboss/aop/InstanceAdvisorDelegate.java
===================================================================
--- projects/aop/trunk/aop/src/main/java/org/jboss/aop/InstanceAdvisorDelegate.java	2009-10-06 14:29:47 UTC (rev 94413)
+++ projects/aop/trunk/aop/src/main/java/org/jboss/aop/InstanceAdvisorDelegate.java	2009-10-06 14:41:25 UTC (rev 94414)
@@ -46,8 +46,8 @@
    private static final Object NULL_ASPECT = new Object();
    protected transient WeakReference<Advisor> classAdvisor;
    InstanceAdvisor instanceAdvisor;
-   protected transient WeakHashMap<AspectDefinition, Object> aspects;
-   protected transient WeakHashMap<AspectDefinition, ConcurrentHashMap<Joinpoint, Object>> joinpointAspects;
+   protected transient volatile WeakHashMap<AspectDefinition, Object> aspects;
+   protected transient volatile WeakHashMap<AspectDefinition, ConcurrentHashMap<Joinpoint, Object>> joinpointAspects;
    protected SimpleMetaData metadata;
 
 

Modified: projects/aop/trunk/aop/src/main/java/org/jboss/aop/advice/AdviceFactory.java
===================================================================
--- projects/aop/trunk/aop/src/main/java/org/jboss/aop/advice/AdviceFactory.java	2009-10-06 14:29:47 UTC (rev 94413)
+++ projects/aop/trunk/aop/src/main/java/org/jboss/aop/advice/AdviceFactory.java	2009-10-06 14:41:25 UTC (rev 94414)
@@ -39,6 +39,8 @@
    private AspectDefinition aspect;
    private AdviceType type;
    
+   private volatile int cachedHash;
+   
    /**
     * Creates a factory that generates advice interceptors.
     * Use this constructor if you want to record an advice of the 
@@ -199,4 +201,18 @@
 
       return true;
    }
+
+   @Override
+   public int hashCode()
+   {
+      int result = cachedHash;
+      if (result == 0)
+      {
+         result = 17;
+         result = 31 * result + advice.hashCode();
+         result = 31 * result + aspect.hashCode();
+         result = 31 * result + type.hashCode();
+      }
+      return result;
+   }
 }
\ No newline at end of file

Modified: projects/aop/trunk/aop/src/main/java/org/jboss/aop/advice/GeneratedAdvisorInterceptor.java
===================================================================
--- projects/aop/trunk/aop/src/main/java/org/jboss/aop/advice/GeneratedAdvisorInterceptor.java	2009-10-06 14:29:47 UTC (rev 94413)
+++ projects/aop/trunk/aop/src/main/java/org/jboss/aop/advice/GeneratedAdvisorInterceptor.java	2009-10-06 14:41:25 UTC (rev 94414)
@@ -85,6 +85,8 @@
    private String cflowString;
    private ASTCFlowExpression cflowExpression;
    
+   private volatile int cachedHash;
+   
    /**
     * The interceptor that is used if and only if we invoke dynamically
     */
@@ -543,6 +545,18 @@
       return adviceString;
    }
    
+   @Override
+   public int hashCode()
+   {
+      int result = cachedHash;
+      if (result == 0)
+      {
+         result = 17;
+         result = 31 * result + factory.hashCode();
+      }
+      return result;
+   }
+
    private class GeneratedOnlyInterceptor implements Interceptor
    {
       String name;

Modified: projects/aop/trunk/aop/src/main/java/org/jboss/aop/advice/GenericInterceptorFactory.java
===================================================================
--- projects/aop/trunk/aop/src/main/java/org/jboss/aop/advice/GenericInterceptorFactory.java	2009-10-06 14:29:47 UTC (rev 94413)
+++ projects/aop/trunk/aop/src/main/java/org/jboss/aop/advice/GenericInterceptorFactory.java	2009-10-06 14:41:25 UTC (rev 94414)
@@ -22,6 +22,7 @@
 package org.jboss.aop.advice;
 
 import java.lang.ref.WeakReference;
+import java.util.concurrent.atomic.AtomicInteger;
 
 import org.jboss.aop.Advisor;
 import org.jboss.aop.joinpoint.Joinpoint;
@@ -36,11 +37,13 @@
    private boolean deployed = true;
    private String name;
 
-   private static volatile int counter = 0;
-
+   private static final AtomicInteger counter = new AtomicInteger();
+   
+   private volatile int cachedHash;
+   
    public GenericInterceptorFactory(String classname, Element element)
    {
-      this.name = classname + (counter++);
+      this.name = classname + (counter.incrementAndGet());
       this.classname = classname;
       this.element = element;
    }
@@ -49,6 +52,7 @@
    {
       this.classRef = new WeakReference<Class<?>>(clazz);
       this.classname = clazz.getName();
+      this.name = classname + (counter.incrementAndGet());
    }
 
    public String getName()
@@ -85,7 +89,7 @@
             {
                clazz = classRef.get();
             }
-            if (clazz != null)
+            if (clazz == null)
             {
                ClassLoader cl = advisor.getClassLoader();
                if (cl == null)
@@ -111,6 +115,7 @@
       }
    }
 
+   @Override
    public boolean equals(Object obj)
    {
       if (this == obj) return true;
@@ -120,6 +125,19 @@
       return true;
    }
 
+   @Override
+   public int hashCode()
+   {
+      int result = cachedHash;
+      if (result == 0)
+      {
+         result = 17;
+         result = 31 * result + classname.hashCode();
+         result = 31 * result + name.hashCode();
+      }
+      return result;
+   }
+
    public AdviceType getType()
    {
       return AdviceType.AROUND;

Modified: projects/aop/trunk/aop/src/main/java/org/jboss/aop/advice/ScopedInterceptorFactory.java
===================================================================
--- projects/aop/trunk/aop/src/main/java/org/jboss/aop/advice/ScopedInterceptorFactory.java	2009-10-06 14:29:47 UTC (rev 94413)
+++ projects/aop/trunk/aop/src/main/java/org/jboss/aop/advice/ScopedInterceptorFactory.java	2009-10-06 14:41:25 UTC (rev 94414)
@@ -37,6 +37,8 @@
 {
    private AspectDefinition aspect;
 
+   private volatile int cachedHash;
+
    public ScopedInterceptorFactory(AspectDefinition aspect)
    {
       this.aspect = aspect;
@@ -139,4 +141,17 @@
 
       return true;
    }
+   
+   @Override
+   public int hashCode()
+   {
+      int result = cachedHash;
+      if (result == 0)
+      {
+         result = 17;
+         result = 31 * result + aspect.hashCode();
+      }
+      return result;
+   }
+
 }

Modified: projects/aop/trunk/aop/src/main/java/org/jboss/aop/advice/annotation/assignability/ArgumentContextualizer.java
===================================================================
--- projects/aop/trunk/aop/src/main/java/org/jboss/aop/advice/annotation/assignability/ArgumentContextualizer.java	2009-10-06 14:29:47 UTC (rev 94413)
+++ projects/aop/trunk/aop/src/main/java/org/jboss/aop/advice/annotation/assignability/ArgumentContextualizer.java	2009-10-06 14:41:25 UTC (rev 94414)
@@ -24,6 +24,7 @@
 import java.lang.reflect.ParameterizedType;
 import java.lang.reflect.Type;
 import java.lang.reflect.TypeVariable;
+import java.util.Arrays;
 import java.util.LinkedList;
 import java.util.ListIterator;
 
@@ -370,6 +371,8 @@
       private Type[] arguments;
       private Type ownerType;
       private Type rawType;
+      
+      private volatile int cachedHash;
 
       ParameterizedType_(ParameterizedType type)
       {
@@ -396,6 +399,7 @@
          return this.rawType;
       }
 
+      @Override
       public boolean equals(Object obj)
       {
          if (!(obj instanceof ParameterizedType))
@@ -418,6 +422,20 @@
          }
          return true;
       }
+      
+      @Override
+      public int hashCode()
+      {
+         int result = cachedHash;
+         if (result == 0)
+         {
+            result = 17;
+            result = 31 * result + ownerType.hashCode();
+            result = 31 * result + rawType.hashCode();
+            result = 31 * result + Arrays.hashCode(arguments);
+         }
+         return result;
+      }
    }
 
    /**

Modified: projects/aop/trunk/aop/src/main/java/org/jboss/aop/advice/annotation/assignability/DegreeAlgorithm.java
===================================================================
--- projects/aop/trunk/aop/src/main/java/org/jboss/aop/advice/annotation/assignability/DegreeAlgorithm.java	2009-10-06 14:29:47 UTC (rev 94413)
+++ projects/aop/trunk/aop/src/main/java/org/jboss/aop/advice/annotation/assignability/DegreeAlgorithm.java	2009-10-06 14:41:25 UTC (rev 94414)
@@ -135,7 +135,7 @@
       if (fromType.isInterface())
       {
          // if is object, the degree is the size of this interface hierarchy + 1
-         if (toType.getName() == "java.lang.Object")
+         if (toType.getName().equals("java.lang.Object"))
          {
             ArrayList<Class<?>[]> list1 = new ArrayList<Class<?>[]>();
             ArrayList<Class<?>[]> list2 = new ArrayList<Class<?>[]>();

Modified: projects/aop/trunk/aop/src/main/java/org/jboss/aop/annotation/compiler/ByteCodeAnnotationCompiler.java
===================================================================
--- projects/aop/trunk/aop/src/main/java/org/jboss/aop/annotation/compiler/ByteCodeAnnotationCompiler.java	2009-10-06 14:29:47 UTC (rev 94413)
+++ projects/aop/trunk/aop/src/main/java/org/jboss/aop/annotation/compiler/ByteCodeAnnotationCompiler.java	2009-10-06 14:41:25 UTC (rev 94414)
@@ -257,9 +257,17 @@
          byte[] byteCode = ctClass.toBytecode();
          String path = URLDecoder.decode(url.getFile(), "UTF-8");
          File fp = new File(path);
-         FileOutputStream os = new FileOutputStream(fp); 
-         os.write(byteCode);
-         os.close();
+         FileOutputStream os = null;
+         try
+         {
+            os = new FileOutputStream(fp);
+            os.write(byteCode);
+         }
+         finally
+         {
+            if (os != null)
+               os.close();
+         }
          System.out.println("[compiled] " + fp);
       }
 

Modified: projects/aop/trunk/aop/src/main/java/org/jboss/aop/ant/AopC.java
===================================================================
--- projects/aop/trunk/aop/src/main/java/org/jboss/aop/ant/AopC.java	2009-10-06 14:29:47 UTC (rev 94413)
+++ projects/aop/trunk/aop/src/main/java/org/jboss/aop/ant/AopC.java	2009-10-06 14:41:25 UTC (rev 94414)
@@ -496,6 +496,10 @@
          }
          catch (IOException e)
          {
+            throw new RuntimeException(e);
+         }
+         finally
+         {
             if (writer != null)
             {
                try
@@ -506,7 +510,6 @@
                {
                }
             }
-            throw new RuntimeException(e);
          }
       }
    }

Modified: projects/aop/trunk/aop/src/main/java/org/jboss/aop/instrument/JoinPointGenerator.java
===================================================================
--- projects/aop/trunk/aop/src/main/java/org/jboss/aop/instrument/JoinPointGenerator.java	2009-10-06 14:29:47 UTC (rev 94413)
+++ projects/aop/trunk/aop/src/main/java/org/jboss/aop/instrument/JoinPointGenerator.java	2009-10-06 14:41:25 UTC (rev 94414)
@@ -493,6 +493,9 @@
          }
       }
       
+      if (advisorClass == null)
+         throw new IllegalStateException("Could not find advisor class");
+      
       try
       {
          joinpointField = advisorClass.getField(joinpointFieldName);
@@ -2308,6 +2311,10 @@
             {
                extraction = primitiveExtractions[7];
             }
+            else
+            {
+               throw new IllegalStateException("Unsupported type " + expectedType);
+            }
             code.append(extraction[0]);
             code.append(i);
             code.append(extraction[1]);

Modified: projects/aop/trunk/aop/src/main/java/org/jboss/aop/instrument/JoinpointClassification.java
===================================================================
--- projects/aop/trunk/aop/src/main/java/org/jboss/aop/instrument/JoinpointClassification.java	2009-10-06 14:29:47 UTC (rev 94413)
+++ projects/aop/trunk/aop/src/main/java/org/jboss/aop/instrument/JoinpointClassification.java	2009-10-06 14:41:25 UTC (rev 94414)
@@ -65,6 +65,8 @@
    //private boolean dynamicAop;
    private JoinpointClassification counterPart;
    
+   private volatile int cachedHash;
+
    /**
     * Private constructor (singleton class).
     * @param description classification description.
@@ -87,10 +89,12 @@
    /**
     *  Returns a description of the joinpoint classification. 
     */
+   @Override
    public String toString() {
       return this.description;
    }
    
+   @Override
    public boolean equals(Object other)
    {
       if (other == counterPart)
@@ -99,4 +103,18 @@
       }
       return super.equals(other);
    }
+   
+   @Override
+   public int hashCode()
+   {
+      int result = cachedHash;
+      if (result == 0)
+      {
+         result = 17;
+         result = 31 * result + description.hashCode();
+      }
+      return result;
+   }
+
+
 }
\ No newline at end of file

Modified: projects/aop/trunk/aop/src/main/java/org/jboss/aop/instrument/OptimizedConstructionInvocations.java
===================================================================
--- projects/aop/trunk/aop/src/main/java/org/jboss/aop/instrument/OptimizedConstructionInvocations.java	2009-10-06 14:29:47 UTC (rev 94413)
+++ projects/aop/trunk/aop/src/main/java/org/jboss/aop/instrument/OptimizedConstructionInvocations.java	2009-10-06 14:41:25 UTC (rev 94414)
@@ -73,6 +73,8 @@
             break;
          }
       }
+      if (template == null)
+         throw new IllegalStateException("Could not find template");
       CtConstructor icon = CtNewConstructor.make(template.getParameterTypes(),
             template.getExceptionTypes(), invocation);
       invocation.addConstructor(icon);

Modified: projects/aop/trunk/aop/src/main/java/org/jboss/aop/instrument/TransformerCommon.java
===================================================================
--- projects/aop/trunk/aop/src/main/java/org/jboss/aop/instrument/TransformerCommon.java	2009-10-06 14:29:47 UTC (rev 94413)
+++ projects/aop/trunk/aop/src/main/java/org/jboss/aop/instrument/TransformerCommon.java	2009-10-06 14:41:25 UTC (rev 94414)
@@ -91,9 +91,17 @@
             path = path + newClass.getSimpleName() + ".class";
             URI newUrl = new URI(path);
             file = new File(newUrl);
-            FileOutputStream fp = new FileOutputStream(file);
-            fp.write(newClass.toBytecode());
-            fp.close();
+            FileOutputStream fp = null;
+            try
+            {
+               fp = new FileOutputStream(file);
+               fp.write(newClass.toBytecode());
+            }
+            finally
+            {
+               if (fp != null)
+                  fp.close();
+            }
          }
          else
          {

Modified: projects/aop/trunk/aop/src/main/java/org/jboss/aop/joinpoint/MethodInvocation.java
===================================================================
--- projects/aop/trunk/aop/src/main/java/org/jboss/aop/joinpoint/MethodInvocation.java	2009-10-06 14:29:47 UTC (rev 94413)
+++ projects/aop/trunk/aop/src/main/java/org/jboss/aop/joinpoint/MethodInvocation.java	2009-10-06 14:41:25 UTC (rev 94414)
@@ -29,6 +29,7 @@
 import java.lang.reflect.Method;
 import java.rmi.MarshalledObject;
 import java.util.ArrayList;
+import java.util.Arrays;
 
 import org.jboss.aop.Advisor;
 import org.jboss.aop.MethodInfo;
@@ -59,7 +60,7 @@
       sb.append(", unadvisedMethod=").append(unadvisedMethod);
       sb.append(", metadata=").append(metadata);
       sb.append(", targetObject=").append(targetObject);
-      sb.append(", arguments=").append(arguments);
+      sb.append(", arguments=").append(Arrays.toString(arguments));
       sb.append("]");
       return sb.toString();
    }

Modified: projects/aop/trunk/aop/src/main/java/org/jboss/aop/metadata/SimpleMetaData.java
===================================================================
--- projects/aop/trunk/aop/src/main/java/org/jboss/aop/metadata/SimpleMetaData.java	2009-10-06 14:29:47 UTC (rev 94413)
+++ projects/aop/trunk/aop/src/main/java/org/jboss/aop/metadata/SimpleMetaData.java	2009-10-06 14:41:25 UTC (rev 94414)
@@ -52,7 +52,7 @@
    /**
     * Contains the value of a metadata attribute. 
     */
-   public class MetaDataValue implements java.io.Serializable
+   public static class MetaDataValue implements java.io.Serializable
    {
       static final long serialVersionUID = -8024138149680591337L;
       public final PayloadKey type;

Modified: projects/aop/trunk/aop/src/main/java/org/jboss/aop/pointcut/FieldMatcher.java
===================================================================
--- projects/aop/trunk/aop/src/main/java/org/jboss/aop/pointcut/FieldMatcher.java	2009-10-06 14:29:47 UTC (rev 94413)
+++ projects/aop/trunk/aop/src/main/java/org/jboss/aop/pointcut/FieldMatcher.java	2009-10-06 14:41:25 UTC (rev 94414)
@@ -244,11 +244,11 @@
       {
          if (refField != null)
          {
-            return new Boolean(Util.has(ctField.getDeclaringClass(), (ASTConstructor) n, advisor));
+            return new Boolean(Util.has(refField.getDeclaringClass(), (ASTConstructor) n, advisor));
          }
          else
          {
-            return new Boolean(Util.has(refField.getDeclaringClass(), (ASTConstructor) n, advisor));
+            return new Boolean(Util.has(ctField.getDeclaringClass(), (ASTConstructor) n, advisor));
 
          }
       }

Modified: projects/aop/trunk/aop/src/main/java/org/jboss/aop/pointcut/PointcutStats.java
===================================================================
--- projects/aop/trunk/aop/src/main/java/org/jboss/aop/pointcut/PointcutStats.java	2009-10-06 14:29:47 UTC (rev 94413)
+++ projects/aop/trunk/aop/src/main/java/org/jboss/aop/pointcut/PointcutStats.java	2009-10-06 14:41:25 UTC (rev 94414)
@@ -69,8 +69,8 @@
  */
 public class PointcutStats implements PointcutExpressionParserVisitor
 {
-   protected ASTStart start;
-   protected AspectManager manager;
+   protected final ASTStart start;
+   protected final AspectManager manager;
    protected boolean execution = false;
    protected boolean methodExecution = false;
    protected boolean constructorExecution = false;

Modified: projects/aop/trunk/aop/src/main/java/org/jboss/aop/proxy/container/ContainerCacheUtil.java
===================================================================
--- projects/aop/trunk/aop/src/main/java/org/jboss/aop/proxy/container/ContainerCacheUtil.java	2009-10-06 14:29:47 UTC (rev 94413)
+++ projects/aop/trunk/aop/src/main/java/org/jboss/aop/proxy/container/ContainerCacheUtil.java	2009-10-06 14:41:25 UTC (rev 94414)
@@ -21,6 +21,7 @@
 */ 
 package org.jboss.aop.proxy.container;
 
+import java.io.Serializable;
 import java.lang.ref.WeakReference;
 import java.util.Arrays;
 import java.util.Comparator;

Modified: projects/aop/trunk/aop/src/main/java/org/jboss/aop/proxy/container/ContainerProxyCacheKey.java
===================================================================
--- projects/aop/trunk/aop/src/main/java/org/jboss/aop/proxy/container/ContainerProxyCacheKey.java	2009-10-06 14:29:47 UTC (rev 94413)
+++ projects/aop/trunk/aop/src/main/java/org/jboss/aop/proxy/container/ContainerProxyCacheKey.java	2009-10-06 14:41:25 UTC (rev 94414)
@@ -104,7 +104,7 @@
          return true;
       }
  
-      if (obj.getClass() != ContainerProxyCacheKey.class)
+      if (obj.getClass() != this.getClass())
       {
          return false;
       }

Modified: projects/aop/trunk/aop/src/main/java/org/jboss/aop/proxy/container/ContainerProxyMethodInvocation.java
===================================================================
--- projects/aop/trunk/aop/src/main/java/org/jboss/aop/proxy/container/ContainerProxyMethodInvocation.java	2009-10-06 14:29:47 UTC (rev 94413)
+++ projects/aop/trunk/aop/src/main/java/org/jboss/aop/proxy/container/ContainerProxyMethodInvocation.java	2009-10-06 14:41:25 UTC (rev 94414)
@@ -36,6 +36,11 @@
    AspectManaged proxy;
    static final Object[] NO_ARGS = new Object[0];
    
+   public ContainerProxyMethodInvocation()
+   {
+      //For serialization
+   }
+   
    public ContainerProxyMethodInvocation(MethodInfo info, Interceptor[] interceptors, AspectManaged proxy)
    {
       super(info, interceptors);

Modified: projects/aop/trunk/aop/src/main/java/org/jboss/aop/proxy/container/GeneratedAOPProxyFactory.java
===================================================================
--- projects/aop/trunk/aop/src/main/java/org/jboss/aop/proxy/container/GeneratedAOPProxyFactory.java	2009-10-06 14:29:47 UTC (rev 94413)
+++ projects/aop/trunk/aop/src/main/java/org/jboss/aop/proxy/container/GeneratedAOPProxyFactory.java	2009-10-06 14:41:25 UTC (rev 94414)
@@ -131,6 +131,9 @@
             }
          }
 
+         if (proxyClass == null)
+            throw new IllegalStateException("No proxy class");
+         
          return instantiateAndConfigureProxy(proxyClass, params);
       }
       catch (Exception e)

Modified: projects/aop/trunk/aop/src/main/java/org/jboss/aop/standalone/Compiler.java
===================================================================
--- projects/aop/trunk/aop/src/main/java/org/jboss/aop/standalone/Compiler.java	2009-10-06 14:29:47 UTC (rev 94413)
+++ projects/aop/trunk/aop/src/main/java/org/jboss/aop/standalone/Compiler.java	2009-10-06 14:41:25 UTC (rev 94414)
@@ -212,9 +212,17 @@
                if (verbose) System.out.println("[aopc] " + f + " is neither a java class or a directory");
             }
          }
-         FileOutputStream reportFile = new FileOutputStream("aop-report.xml");
-         reportFile.write(XmlReport.toXml().getBytes());
-         reportFile.close();
+         FileOutputStream reportFile = null;
+         try
+         {
+            reportFile = new FileOutputStream("aop-report.xml");
+            reportFile.write(XmlReport.toXml().getBytes());
+         }
+         finally
+         {
+            if (reportFile != null)
+               reportFile.close();
+         }
       }
       else
       {
@@ -301,9 +309,17 @@
    }
    
    private ClassFile createClassFile(final File file) throws Exception{
-      DataInputStream is = new DataInputStream(new FileInputStream(file));
-      ClassFile cf = new ClassFile(is);
-      is.close();
+      DataInputStream is = null;
+      ClassFile cf = null;
+      try
+      {
+         is = new DataInputStream(new FileInputStream(file));
+         cf = new ClassFile(is);
+      }
+      finally
+      {
+         is.close();
+      }
       return cf;
    }
    
@@ -324,6 +340,10 @@
       }
       catch (Exception e)
       {
+         throw new RuntimeException(e);
+      }
+      finally
+      {
          try
          {
             reader.close();
@@ -331,7 +351,6 @@
          catch (IOException e1)
          {
          }
-         throw new RuntimeException(e);
       }
    }
 
@@ -343,9 +362,18 @@
     */
    public boolean loadFile(File file) throws Exception
    {
-      DataInputStream is = new DataInputStream(new FileInputStream(file));
-      ClassFile cf = new ClassFile(is);
-      is.close();
+      DataInputStream is = null;
+      ClassFile cf = null;
+      try
+      {
+         is = new DataInputStream(new FileInputStream(file));
+         cf = new ClassFile(is);
+      }
+      finally
+      {
+         if (is != null)
+            is.close();
+      }
       Class<?> clazz = loader.loadClass(cf.getName());
       if (org.jboss.aop.Advised.class.isAssignableFrom(clazz))
       {
@@ -394,9 +422,17 @@
          if (verbose) System.out.println("[no comp needed] " + info.getFile());
          return;
       }
-      FileOutputStream os = new FileOutputStream(infoFile);
-      os.write(bytes);
-      os.close();
+      FileOutputStream os = null;
+      try
+      {
+         os = new FileOutputStream(infoFile);
+         os.write(bytes);
+      }
+      finally
+      {
+         if (os != null)
+            os.close();
+      }
       info.setCompiled(true);
       if (verbose) System.out.println("[compiled] " + info.getFile());
    }

Modified: projects/aop/trunk/aop/src/main/java/org/jboss/aop/util/MethodHashing.java
===================================================================
--- projects/aop/trunk/aop/src/main/java/org/jboss/aop/util/MethodHashing.java	2009-10-06 14:29:47 UTC (rev 94413)
+++ projects/aop/trunk/aop/src/main/java/org/jboss/aop/util/MethodHashing.java	2009-10-06 14:41:25 UTC (rev 94414)
@@ -242,7 +242,7 @@
              long hash = methodHash(method);
              map.put(method.toString(), new Long(hash));
           }
-          catch (Exception e)
+          catch (Exception ignore)
           {
           }
        }
@@ -274,7 +274,7 @@
             //Use Clebert's Persistent References so we don't get memory leaks
             map.put(new Long(hash), new MethodPersistentReference(methods[i], PersistentReference.REFERENCE_SOFT));
          }
-         catch (Exception e)
+         catch (Exception ignore)
          {
          }
       }
@@ -306,7 +306,7 @@
             //Use Clebert's Persistent References so we don't get memory leaks
             map.put(new Long(hash), new ConstructorPersistentReference(constructors[i], PersistentReference.REFERENCE_SOFT));
          }
-         catch (Exception e)
+         catch (Exception ignore)
          {
          }
       }

Modified: projects/aop/trunk/aop/src/main/resources/findbugs/exclude.xml
===================================================================
--- projects/aop/trunk/aop/src/main/resources/findbugs/exclude.xml	2009-10-06 14:29:47 UTC (rev 94413)
+++ projects/aop/trunk/aop/src/main/resources/findbugs/exclude.xml	2009-10-06 14:41:25 UTC (rev 94414)
@@ -1,2 +1,400 @@
 <FindBugsFilter>
+   <!-- autogenerated so we can't help the bad names/practice -->
+   <Match>
+      <Class name="~org\.jboss\.aop\.pointcut\.ast\..*"/>
+   </Match>
+   
+   <!-- These writes to static fields from instance methods are fine -->
+   <Match>
+      <Class name="org.jboss.aop.AspectManager$1"/>
+      <Method name="run"/>
+      <Or>
+         <Field name="maintainAdvisorMethodInterceptors"/>
+         <Field name="manager"/>
+         <Field name="optimize"/>
+      </Or>
+      <Bug pattern="ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD"/>
+   </Match>
+   <Match>
+      <Class name="org.jboss.aop.proxy.container.ContainerProxyFactory"/>
+      <Method name="createBasics"/>
+      <Field name="setDelegateMethod"/>
+      <Bug pattern="ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD"/>
+   </Match>
+   <Match>
+      <Class name="org.jboss.aop.standalone.Compiler"/>
+      <Method name="compile" params="java.lang.String[]" returns="void"/>
+      <Field name="optimize"/>
+      <Bug pattern="ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD"/>
+   </Match>
+   <Match>
+      <Class name="org.jboss.aop.standalone.Compiler"/>
+      <Method name="compile" params="java.lang.String[]" returns="void"/>
+      <Field name="suppressReferenceErrors"/>
+      <Bug pattern="ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD"/>
+   </Match>
+   <Match>
+      <Class name="org.jboss.aop.standalone.Compiler"/>
+      <Method name="compile" params="java.lang.String[]" returns="void"/>
+      <Field name="verbose"/>
+      <Bug pattern="ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD"/>
+   </Match>
+   <Match>
+      <Class name="org.jboss.aop.standalone.Compiler"/>
+      <Method name="compile" params="java.lang.String[]" returns="void"/>
+      <Field name="searchClasspath"/>
+      <Bug pattern="ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD"/>
+   </Match>
+   <Match>
+      <Class name="org.jboss.aop.standalone.Compiler"/>
+      <Method name="compile" params="java.lang.String[]" returns="void"/>
+      <Field name="loader"/>
+      <Bug pattern="ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD"/>
+   </Match>
+   <Match>
+      <Class name="org.jboss.aop.WeavingStrategySupport"/>
+      <Method name="setTransformationStarted"/>
+      <Field name="transformationStarted"/>
+      <Bug pattern="ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD"/>
+   </Match>
+
+   <!-- 
+      These fields are not initilalized in the constructor, either because they are intended to be set by setters
+      or because they get set when running other methods
+   -->
+   <Match>
+      <Class name="org.jboss.aop.annotation.compiler.ByteCodeAnnotationCompiler"/>
+      <Field name="pool"/>
+      <Bug pattern="UWF_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR"/>
+   </Match>
+   <Match>
+      <Class name="org.jboss.aop.ant.AnnotationC"/>
+      <Field name="classpath"/>
+      <Bug pattern="UWF_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR"/>
+   </Match>
+   <Match>
+      <Class name="org.jboss.aop.ant.AnnotationC"/>
+      <Field name="compileSourcepath"/>
+      <Bug pattern="UWF_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR"/>
+   </Match>
+   <Match>
+      <Class name="org.jboss.aop.ant.AopC"/>
+      <Field name="compileSourcepath"/>
+      <Bug pattern="UWF_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR"/>
+   </Match>
+   <Match>
+      <Class name="org.jboss.aop.HotSwapStrategy$JoinpointStatusUpdater"/>
+      <Field name="methodInterceptors"/>
+      <Bug pattern="UWF_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR"/>
+   </Match>
+   <Match>
+      <Class name="org.jboss.aop.pointcut.CFlowMatcher"/>
+      <Field name="invocation"/>
+      <Bug pattern="UWF_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR"/>
+   </Match>
+            
+   <!-- These exceptions are meant to be ignored -->
+   <Match>
+      <Class name="org.jboss.aop.advice.PerVmAdvice"/>
+      <Method name="generateInterceptor" params="org.jboss.aop.joinpoint.Joinpoint, java.lang.Object, java.lang.String" returns="org.jboss.aop.advice.Interceptor"/>
+      <Bug pattern="DE_MIGHT_IGNORE"/>
+   </Match>
+   <Match>
+      <Class name="org.jboss.aop.Advisor"/>
+      <Method name="deployMethodAnnotationOverrides" params="java.lang.Class, org.jboss.aop.introduction.AnnotationIntroduction" returns="void"/>
+      <Bug pattern="DE_MIGHT_IGNORE"/>
+   </Match>
+   <Match>
+      <Class name="org.jboss.aop.Advisor"/>
+      <Method name="doDeployAnnotationOverride" params="org.jboss.aop.introduction.AnnotationIntroduction" returns="void"/>
+      <Bug pattern="DE_MIGHT_IGNORE"/>
+   </Match>
+   <Match>
+      <Class name="org.jboss.aop.util.MethodHashing"/>
+      <Method name="getConstructorHashMap" params="java.lang.Class" returns="java.util.Map"/>
+      <Bug pattern="DE_MIGHT_IGNORE"/>
+   </Match>
+   <Match>
+      <Class name="org.jboss.aop.util.MethodHashing"/>
+      <Method name="getMethodHashMap" params="java.lang.Class" returns="java.util.Map"/>
+      <Bug pattern="DE_MIGHT_IGNORE"/>
+   </Match>
+   <Match>
+      <Class name="org.jboss.aop.util.MethodHashing"/>
+      <Method name="getInterfaceHashes" params="java.lang.Class" returns="java.util.Map"/>
+      <Bug pattern="DE_MIGHT_IGNORE"/>
+   </Match>
+
+   <!--  The System.exit() calls are fine in these standalone utilities -->
+   <Match>
+      <Class name="org.jboss.aop.annotation.compiler.AnnotationCompiler"/>
+      <Method name="compile" params="java.lang.String[]" returns="void"/>
+      <Bug pattern="DM_EXIT"/>
+   </Match>
+   <Match>
+      <Class name="org.jboss.aop.annotation.compiler.ByteCodeAnnotationCompiler"/>
+      <Method name="compile" params="java.lang.String[]" returns="void"/>
+      <Bug pattern="DM_EXIT"/>
+   </Match>
+   <Match>
+      <Class name="org.jboss.aop.annotation.compiler.XmlAnnotationCompiler"/>
+      <Method name="compile" params="java.lang.String[]" returns="void"/>
+      <Bug pattern="DM_EXIT"/>
+   </Match>
+   <Match>
+      <Class name="org.jboss.aop.standalone.Compiler"/>
+      <Method name="compile" params="java.lang.String[]" returns="void"/>
+      <Bug pattern="DM_EXIT"/>
+   </Match>
+
+   <!-- Ignore this  -->            
+   <Match>
+      <Class name="org.jboss.aop.advice.annotation.AdviceInfo"/>
+      <Method name="compareTo" params="org.jboss.aop.advice.annotation.AdviceInfo" returns="int"/>
+      <Bug pattern="EQ_COMPARETO_USE_OBJECT_EQUALS"/>
+   </Match>
+
+   <!--  Too late to change these 'confusing' names -->            
+   <Match>
+      <Class name="org.jboss.aop.Advisor"/>
+      <Method name="getMetadata"/>
+      <Bug pattern="NM_CONFUSING"/>
+   </Match>
+   <Match>
+      <Class name="org.jboss.aop.Advisor"/>
+      <Method name="setMetadata" params="org.jboss.metadata.spi.MetaData" returns="void"/>
+      <Bug pattern="NM_CONFUSING"/>
+   </Match>
+   <Match>
+      <Class name="org.jboss.aop.AspectAnnotationLoaderStrategy$InterfaceIntroductionMixinInfo"/>
+      <Method name="getClassname"/>
+      <Bug pattern="NM_CONFUSING"/>
+   </Match>
+   <Match>
+      <Class name="org.jboss.aop.ClassInstanceAdvisor"/>
+      <Method name="getMetaData"/>
+      <Bug pattern="NM_CONFUSING"/>
+   </Match>
+   <Match>
+      <Class name="org.jboss.aop.joinpoint.ConstructionInvocationWrapper"/>
+      <Method name="setMetaData" params="org.jboss.aop.metadata.SimpleMetaData" returns="void"/>
+      <Bug pattern="NM_CONFUSING"/>
+   </Match>
+            
+   <Match>
+      <Class name="org.jboss.aop.ant.AopC"/>
+      <Method name="execute"/>
+      <Bug pattern="RV_RETURN_VALUE_IGNORED_BAD_PRACTICE"/>
+   </Match>
+
+   <!--  Don't worry about the File.delete()/mkDirs() return values -->            
+   <Match>
+      <Class name="org.jboss.aop.hook.GenerateInstrumentedClassLoader"/>
+      <Method name="main" params="java.lang.String[]" returns="void"/>
+      <Bug pattern="RV_RETURN_VALUE_IGNORED_BAD_PRACTICE"/>
+   </Match>            
+   <Match>
+      <Class name="org.jboss.aop.hook.GeneratePluggableInstrumentedClassLoader"/>
+      <Method name="main" params="java.lang.String[]" returns="void"/>
+      <Bug pattern="RV_RETURN_VALUE_IGNORED_BAD_PRACTICE"/>
+   </Match>
+   <Match>
+      <Class name="org.jboss.aop.standalone.Compiler"/>
+      <Method name="addFile" params="java.io.File" returns="void"/>
+      <Bug pattern="RV_RETURN_VALUE_IGNORED_BAD_PRACTICE"/>
+   </Match>
+            
+   <!--  Don't want to change serialization at this stage. This is the weakest area of our standalone testsuite -->
+   <Match>
+      <Class name="org.jboss.aop.annotation.compiler.AnnotationDocletTag"/>
+      <Field name="ast"/>
+      <Bug pattern="SE_BAD_FIELD"/>
+   </Match>
+   <Match>
+      <Class name="org.jboss.aop.ClassInstanceAdvisor"/>
+      <Field name="instanceRef"/>
+      <Bug pattern="SE_BAD_FIELD"/>
+   </Match>
+   <Match>
+      <Class name="org.jboss.aop.ClassInstanceAdvisor"/>
+      <Field name="interceptorChainObserver"/>
+      <Bug pattern="SE_BAD_FIELD"/>
+   </Match>
+   <Match>
+      <Class name="org.jboss.aop.ClassInstanceAdvisor"/>
+      <Field name="stacks"/>
+      <Bug pattern="SE_BAD_FIELD"/>
+   </Match>
+   <Match>
+      <Class name="org.jboss.aop.GeneratedInstanceAdvisorMixin"/>
+      <Field name="instanceRef"/>
+      <Bug pattern="SE_BAD_FIELD"/>
+   </Match>
+   <Match>
+      <Class name="org.jboss.aop.GeneratedInstanceAdvisorMixin"/>
+      <Field name="interceptorChainObserver"/>
+      <Bug pattern="SE_BAD_FIELD"/>
+   </Match>
+   <Match>
+      <Class name="org.jboss.aop.GeneratedInstanceAdvisorMixin"/>
+      <Field name="stacks"/>
+      <Bug pattern="SE_BAD_FIELD"/>
+   </Match>
+   <Match>
+      <Class name="org.jboss.aop.InstanceAdvisorDelegate"/>
+      <Field name="instanceAdvisor"/>
+      <Bug pattern="SE_BAD_FIELD"/>
+   </Match>
+   <Match>
+      <Class name="org.jboss.aop.InstanceAdvisorDelegate"/>
+      <Field name="aspects"/>
+      <Bug pattern="SE_TRANSIENT_FIELD_NOT_RESTORED"/>
+   </Match>
+   <Match>
+      <Class name="org.jboss.aop.InstanceAdvisorDelegate"/>
+      <Field name="joinpointAspects"/>
+      <Bug pattern="SE_TRANSIENT_FIELD_NOT_RESTORED"/>
+   </Match>
+   <Match>
+      <Class name="org.jboss.aop.InstanceAdvisorDelegate"/>
+      <Field name="classAdvisor"/>
+      <Bug pattern="SE_TRANSIENT_FIELD_NOT_RESTORED"/>
+   </Match>
+   <Match>
+      <Class name="org.jboss.aop.joinpoint.ConstructorCalledByConstructorInvocation"/>
+      <Field name="calling"/>
+      <Bug pattern="SE_BAD_FIELD"/>
+   </Match>
+   <Match>
+      <Class name="org.jboss.aop.joinpoint.ConstructorCalledByConstructorInvocation"/>
+      <Field name="constructor"/>
+      <Bug pattern="SE_BAD_FIELD"/>
+   </Match>
+   <Match>
+      <Class name="org.jboss.aop.joinpoint.ConstructorCalledByConstructorInvocation"/>
+      <Field name="wrappingMethod"/>
+      <Bug pattern="SE_BAD_FIELD"/>
+   </Match>
+   <Match>
+      <Class name="org.jboss.aop.joinpoint.ConstructorCalledByMethodInvocation"/>
+      <Field name="callingMethod"/>
+      <Bug pattern="SE_BAD_FIELD"/>
+   </Match>
+   <Match>
+      <Class name="org.jboss.aop.joinpoint.ConstructorCalledByMethodInvocation"/>
+      <Field name="constructor"/>
+      <Bug pattern="SE_BAD_FIELD"/>
+   </Match>
+   <Match>
+      <Class name="org.jboss.aop.joinpoint.ConstructorCalledByMethodInvocation"/>
+      <Field name="wrappingMethod"/>
+      <Bug pattern="SE_BAD_FIELD"/>
+   </Match>
+   <Match>
+      <Class name="org.jboss.aop.joinpoint.InvocationBase"/>
+      <Field name="interceptors"/>
+      <Bug pattern="SE_TRANSIENT_FIELD_NOT_RESTORED"/>
+   </Match>
+   <Match>
+      <Class name="org.jboss.aop.joinpoint.MethodCalledByConstructorInvocation"/>
+      <Field name="calling"/>
+      <Bug pattern="SE_BAD_FIELD"/>
+   </Match>
+   <Match>
+      <Class name="org.jboss.aop.joinpoint.MethodCalledByConstructorInvocation"/>
+      <Field name="method"/>
+      <Bug pattern="SE_BAD_FIELD"/>
+   </Match>
+   <Match>
+      <Class name="org.jboss.aop.joinpoint.MethodCalledByMethodInvocation"/>
+      <Field name="callingMethod"/>
+      <Bug pattern="SE_BAD_FIELD"/>
+   </Match>
+   <Match>
+      <Class name="org.jboss.aop.joinpoint.MethodCalledByMethodInvocation"/>
+      <Field name="method"/>
+      <Bug pattern="SE_BAD_FIELD"/>
+   </Match>
+   <Match>
+      <Class name="org.jboss.aop.joinpoint.MethodInvocationWrapper"/>
+      <Bug pattern="SE_NO_SUITABLE_CONSTRUCTOR_FOR_EXTERNALIZATION"/>
+   </Match>
+   <Match>
+      <Class name="org.jboss.aop.proxy.container.ContainerCacheUtil$Alphabetical"/>
+      <Bug pattern="SE_COMPARATOR_SHOULD_BE_SERIALIZABLE"/>
+   </Match>
+   <Match>
+      <Class name="org.jboss.aop.proxy.container.ContainerProxyCacheKey$MixinAlphabetical"/>
+      <Bug pattern="SE_COMPARATOR_SHOULD_BE_SERIALIZABLE"/>
+   </Match>
+   <Match>
+      <Class name="org.jboss.aop.proxy.container.MarshalledContainerProxy"/>
+      <Field name="targetInterfaces"/>
+      <Bug pattern="SE_BAD_FIELD"/>
+   </Match>
+   <Match>
+      <Class name="org.jboss.aop.proxy.container.MarshalledContainerProxy$MarshalledMethodInfo"/>
+      <Field name="interceptors"/>
+      <Bug pattern="SE_BAD_FIELD"/>
+   </Match>
+   <Match>
+      <Class name="org.jboss.aop.proxy.container.MarshalledContainerProxy$MarshalledMethodInfo"/>
+      <Field name="proxy"/>
+      <Bug pattern="SE_TRANSIENT_FIELD_NOT_RESTORED"/>
+   </Match>
+   <Match>
+      <Class name="org.jboss.aop.proxy.container.MarshalledContainerProxy$MarshalledMethodInfo"/>
+      <Field name="requiresInstanceAdvisor"/>
+      <Bug pattern="SE_TRANSIENT_FIELD_NOT_RESTORED"/>
+   </Match>
+   <Match>
+      <Class name="org.jboss.aop.proxy.MarshalledClassProxy"/>
+      <Field name="advisor"/>
+      <Bug pattern="SE_BAD_FIELD"/>
+   </Match>
+   <Match>
+      <Class name="org.jboss.aop.proxy.MarshalledInterfaceProxy"/>
+      <Field name="advisor"/>
+      <Bug pattern="SE_BAD_FIELD"/>
+   </Match>
+   <Match>
+      <Class name="org.jboss.aop.util.ConstructorComparator"/>
+      <Bug pattern="SE_COMPARATOR_SHOULD_BE_SERIALIZABLE"/>
+   </Match>
+   <Match>
+      <Class name="org.jboss.aop.util.CtConstructorComparator"/>
+      <Bug pattern="SE_COMPARATOR_SHOULD_BE_SERIALIZABLE"/>
+   </Match>
+   <Match>
+      <Class name="org.jboss.aop.util.CtFieldComparator"/>
+      <Bug pattern="SE_COMPARATOR_SHOULD_BE_SERIALIZABLE"/>
+   </Match>
+   <Match>
+      <Class name="org.jboss.aop.util.FieldComparator"/>
+      <Bug pattern="SE_COMPARATOR_SHOULD_BE_SERIALIZABLE"/>
+   </Match>
+   <Match>
+      <Class name="org.jboss.aop.advice.SortedCFlowInterceptor$ChainCache"/>
+      <Bug pattern="SE_NO_SERIALVERSIONID"/>
+   </Match>
+
+   <!-- Fixed the other null on some path errors, these are not an issue -->
+   <Match>
+      <Class name="org.jboss.aop.eclipsesupport.EclipseTestTransformer"/>
+      <Method name="weaveRemoteTestRunner" params="java.lang.ClassLoader, java.lang.String, java.lang.Class, java.security.ProtectionDomain, byte[]" returns="byte[]"/>
+      <Bug pattern="NP_NULL_ON_SOME_PATH"/>
+   </Match>
+   <Match>
+      <Class name="org.jboss.aop.InstanceAdvisorDelegate"/>
+      <Method name="getPerInstanceAspect" params="org.jboss.aop.advice.AspectDefinition" returns="java.lang.Object"/>
+      <Field name="aspects"/>
+      <Bug pattern="NP_NULL_ON_SOME_PATH"/>
+   </Match>
+   <Match>
+      <Class name="org.jboss.aop.standalone.XmlReport"/>
+      <Method name="outputAdvisor" params="int, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, org.jboss.aop.ClassAdvisor, java.lang.String" returns="void"/>
+      <Bug pattern="NP_NULL_ON_SOME_PATH"/>
+   </Match>
+            
+               
 </FindBugsFilter>




More information about the jboss-cvs-commits mailing list