[jboss-cvs] JBossAS SVN: r103357 - in projects/aop/branches/Branch_2_2/aop/src/main/java/org/jboss/aop: instrument and 1 other directory.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Wed Mar 31 16:07:57 EDT 2010


Author: flavia.rainone at jboss.com
Date: 2010-03-31 16:07:56 -0400 (Wed, 31 Mar 2010)
New Revision: 103357

Modified:
   projects/aop/branches/Branch_2_2/aop/src/main/java/org/jboss/aop/SuperClassesFirstWeavingStrategy.java
   projects/aop/branches/Branch_2_2/aop/src/main/java/org/jboss/aop/instrument/Instrumentor.java
Log:
[JBAOP-785] Removed the stack trace logging messages

Modified: projects/aop/branches/Branch_2_2/aop/src/main/java/org/jboss/aop/SuperClassesFirstWeavingStrategy.java
===================================================================
--- projects/aop/branches/Branch_2_2/aop/src/main/java/org/jboss/aop/SuperClassesFirstWeavingStrategy.java	2010-03-31 19:58:11 UTC (rev 103356)
+++ projects/aop/branches/Branch_2_2/aop/src/main/java/org/jboss/aop/SuperClassesFirstWeavingStrategy.java	2010-03-31 20:07:56 UTC (rev 103357)
@@ -92,9 +92,24 @@
          if (!(ex instanceof NotFoundException))
          {
             if (verbose)
-               logger.error(ex);
+               logger.warn(ex);
             else
-               logger.error(ex.getMessage()+".. Do verbose mode if you want full stack trace.");
+            {
+               // hack to avoid having to change the signature of 1/3 of the JBoss AOP classes
+               // TODO this should be reviewed
+               Throwable cause = ex.getCause();
+               while (cause.getCause() != null)
+               {
+                  cause = cause.getCause();
+               }
+               if (cause != null && cause instanceof NotFoundException)
+               {
+                  if (verbose)
+                     logger.warn(ex);
+               }
+               else
+                  logger.error(ex.getMessage()+".. Do verbose mode if you want full stack trace.");
+            }
          }
          throw ex;
       }
@@ -130,99 +145,89 @@
       {
          return null;
       }
-      try
+      CtClass superClass = clazz.getSuperclass();
+      if (superClass != null && !Instrumentor.implementsAdvised(clazz))
       {
-         CtClass superClass = clazz.getSuperclass();
-         if (superClass != null && !Instrumentor.implementsAdvised(clazz))
+         ClassPool superPool = superClass.getClassPool();
+         if (superPool != null && superPool instanceof AbstractClassPool)
          {
-            ClassPool superPool = superClass.getClassPool();
-            if (superPool != null && superPool instanceof AbstractClassPool)
+            AspectManager aspectManager = manager;
+            if (manager instanceof Domain && superPool != pool)
             {
-               AspectManager aspectManager = manager;
-               if (manager instanceof Domain && superPool != pool)
-               {
-                  //We are in a scoped classloader and the superclass is not
-                  aspectManager = AspectManager.instance(superPool.getClassLoader());
-               }
-               instrumentClass(aspectManager, (ScopedClassPool) superPool, superClass, false);
+               //We are in a scoped classloader and the superclass is not
+               aspectManager = AspectManager.instance(superPool.getClassLoader());
             }
+            instrumentClass(aspectManager, (ScopedClassPool) superPool, superClass, false);
          }
+      }
 
-         if (manager.isNonAdvisableClassName(clazz.getName()))
+      if (manager.isNonAdvisableClassName(clazz.getName()))
+      {
+         return null;
+      }
+
+      if (clazz.isArray())
+      {
+         if (verbose && logger.isDebugEnabled()) logger.debug("cannot compile, isArray: " + clazz.getName());
+         pool.flushClass(clazz.getName());
+         return null;
+      }
+      if (clazz.isInterface())
+      {
+         if (verbose && logger.isDebugEnabled()) logger.debug("cannot compile, isInterface: " + clazz.getName());
+         //pool.flushClass(info.getClassName());
+         clazz.prune();
+         return null;
+      }
+      if (clazz.isFrozen())
+      {
+         if(isAdvised(pool, clazz))
+            return null;
+         if (verbose && logger.isDebugEnabled()) logger.debug("warning, isFrozen: " + clazz.getName() + " " + clazz.getClassPool());
+         if (!isLoadedClass)
          {
+            //What's the point of this?
+            clazz = obtainCtClassInfo(pool, clazz.getName(), null);
+         }
+         else
             return null;
-         }
+         //info.getClazz().defrost();
+      }
 
-         if (clazz.isArray())
+      boolean transformed = isAdvised(pool, clazz);
+      if (!transformed)
+      {
+         ClassAdvisor advisor =
+            AdvisorFactory.getClassAdvisor(clazz, manager);
+         Instrumentor instrumentor = InstrumentorFactory.getInstrumentor(
+               pool,
+               manager,
+               manager.dynamicStrategy.getJoinpointClassifier(),
+               manager.dynamicStrategy.getDynamicTransformationObserver(clazz));
+
+         if (!Instrumentor.isTransformable(clazz))
          {
-            if (verbose && logger.isDebugEnabled()) logger.debug("cannot compile, isArray: " + clazz.getName());
-            pool.flushClass(clazz.getName());
-            return null;
-         }
-         if (clazz.isInterface())
-         {
-            if (verbose && logger.isDebugEnabled()) logger.debug("cannot compile, isInterface: " + clazz.getName());
+            if (verbose && logger.isDebugEnabled()) logger.debug("cannot compile, implements Untransformable: " + clazz.getName());
+            //Flushing the generated invocation classes breaks things further down the line
             //pool.flushClass(info.getClassName());
-            clazz.prune();
             return null;
          }
-         if (clazz.isFrozen())
-         {
-            if(isAdvised(pool, clazz))
-               return null;
-            if (verbose && logger.isDebugEnabled()) logger.debug("warning, isFrozen: " + clazz.getName() + " " + clazz.getClassPool());
-            if (!isLoadedClass)
-            {
-               //What's the point of this?
-               clazz = obtainCtClassInfo(pool, clazz.getName(), null);
-            }
-            else
-               return null;
-            //info.getClazz().defrost();
-         }
 
-         boolean transformed = isAdvised(pool, clazz);
-         if (!transformed)
-         {
-            ClassAdvisor advisor =
-                   AdvisorFactory.getClassAdvisor(clazz, manager);
-            Instrumentor instrumentor = InstrumentorFactory.getInstrumentor(
-                  pool,
-                  manager,
-                  manager.dynamicStrategy.getJoinpointClassifier(),
-                  manager.dynamicStrategy.getDynamicTransformationObserver(clazz));
-
-            if (!Instrumentor.isTransformable(clazz))
-            {
-               if (verbose && logger.isDebugEnabled()) logger.debug("cannot compile, implements Untransformable: " + clazz.getName());
-               //Flushing the generated invocation classes breaks things further down the line
-               //pool.flushClass(info.getClassName());
-               return null;
-            }
-
-            manager.attachMetaData(advisor, clazz, true);
-            manager.applyInterfaceIntroductions(advisor, clazz);
-            transformed = instrumentor.transform(clazz, advisor);
-         }
-         if (transformed)
-         {
-            return clazz;
-         }
-         
-         if (isLoadedClass)
-         {
-            WeavingRegistry.setClassLoadedButNotWoven(pool, clazz.getName());
-         }
-         
-         return null;
+         manager.attachMetaData(advisor, clazz, true);
+         manager.applyInterfaceIntroductions(advisor, clazz);
+         transformed = instrumentor.transform(clazz, advisor);
       }
-      catch(Exception e)
+      if (transformed)
       {
-         throw new RuntimeException("Error converting class ", e);
+         return clazz;
       }
-      finally
+
+      if (isLoadedClass)
       {
+         WeavingRegistry.setClassLoadedButNotWoven(pool, clazz.getName());
       }
+
+      return null;
    }
 
    public boolean isAdvised(ClassPool pool, CtClass clazz) throws NotFoundException

Modified: projects/aop/branches/Branch_2_2/aop/src/main/java/org/jboss/aop/instrument/Instrumentor.java
===================================================================
--- projects/aop/branches/Branch_2_2/aop/src/main/java/org/jboss/aop/instrument/Instrumentor.java	2010-03-31 19:58:11 UTC (rev 103356)
+++ projects/aop/branches/Branch_2_2/aop/src/main/java/org/jboss/aop/instrument/Instrumentor.java	2010-03-31 20:07:56 UTC (rev 103357)
@@ -80,6 +80,7 @@
  * @author <a href="mailto:gte863h at prism.gatech.edu">Austin Chau</a>
  * @author <a href="mailto:crazybob at crazybob.org">Bob Lee</a>
  * @author <a href="mailto:kabir.khan at jboss.org">Kabir Khan</a>
+ * @author <a href="mailto:flavia.rainone at jboss.com">Flavia Rainone</a>
  * @version $Revision$
  */
 public abstract class Instrumentor
@@ -716,7 +717,7 @@
       {
          if (AspectManager.suppressReferenceErrors)
          {
-            System.err.println("[warn] Could not find class " + 
+            logger.warn("Could not find class " + 
                   refClassName +
                   " (or one of its implemented interfaces) that " + 
                   clazz.getName() + " references.  It may not be in your " +
@@ -837,7 +838,7 @@
       {
          if (AspectManager.suppressTransformationErrors)
          {
-            logger.error("[warn] AOP Instrumentor failed to transform " + clazz.getName(), e);
+            logger.warn("AOP Instrumentor failed to transform " + clazz.getName());
             return false;
          }
          else




More information about the jboss-cvs-commits mailing list