[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