[jboss-cvs] JBossAS SVN: r106132 - in projects/aop/branches/Branch_2_1/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
Thu Jun 17 14:03:45 EDT 2010


Author: flavia.rainone at jboss.com
Date: 2010-06-17 14:03:45 -0400 (Thu, 17 Jun 2010)
New Revision: 106132

Modified:
   projects/aop/branches/Branch_2_1/aop/src/main/java/org/jboss/aop/AspectManager.java
   projects/aop/branches/Branch_2_1/aop/src/main/java/org/jboss/aop/instrument/ClassicInstrumentor.java
   projects/aop/branches/Branch_2_1/aop/src/main/java/org/jboss/aop/instrument/GeneratedAdvisorInstrumentor.java
Log:
[JBAOP-796] Add an instance(Class<?>) to AspectManager and make woven code use that method instead of instance()

Modified: projects/aop/branches/Branch_2_1/aop/src/main/java/org/jboss/aop/AspectManager.java
===================================================================
--- projects/aop/branches/Branch_2_1/aop/src/main/java/org/jboss/aop/AspectManager.java	2010-06-17 17:59:20 UTC (rev 106131)
+++ projects/aop/branches/Branch_2_1/aop/src/main/java/org/jboss/aop/AspectManager.java	2010-06-17 18:03:45 UTC (rev 106132)
@@ -234,6 +234,12 @@
       return instance(SecurityActions.getContextClassLoader());
    }
 
+   public static synchronized AspectManager instance(Class<?> wovenClass)
+   {
+      ClassLoader classLoader = SecurityActions.getClassLoader(wovenClass);
+      return instance(classLoader);
+   }
+
    /**
     * Get the aspect manager for a classloader
     *

Modified: projects/aop/branches/Branch_2_1/aop/src/main/java/org/jboss/aop/instrument/ClassicInstrumentor.java
===================================================================
--- projects/aop/branches/Branch_2_1/aop/src/main/java/org/jboss/aop/instrument/ClassicInstrumentor.java	2010-06-17 17:59:20 UTC (rev 106131)
+++ projects/aop/branches/Branch_2_1/aop/src/main/java/org/jboss/aop/instrument/ClassicInstrumentor.java	2010-06-17 18:03:45 UTC (rev 106132)
@@ -169,11 +169,13 @@
    
    private void addHelperField(CtClass clazz) throws CannotCompileException, NotFoundException
    {
+      String className = clazz.getName();
       addStaticField(clazz,
                      ClassicInstrumentor.HELPER_FIELD_NAME,
                      ClassicInstrumentor.HELPER_CLASS_NAME,
-                     CtField.Initializer.byExpr(ASPECT_MANAGER_CLASS_NAME + ".instance().getAdvisor(java.lang.Class#forName(\"" +
-                                                clazz.getName() + "\"))"));
+                     CtField.Initializer.byExpr(ASPECT_MANAGER_CLASS_NAME + "#instance(java.lang.Class#forName(\"" +
+                                                className + "\")).getAdvisor(java.lang.Class#forName(\"" +
+                                                className + "\"))"));
    }
 
    /**

Modified: projects/aop/branches/Branch_2_1/aop/src/main/java/org/jboss/aop/instrument/GeneratedAdvisorInstrumentor.java
===================================================================
--- projects/aop/branches/Branch_2_1/aop/src/main/java/org/jboss/aop/instrument/GeneratedAdvisorInstrumentor.java	2010-06-17 17:59:20 UTC (rev 106131)
+++ projects/aop/branches/Branch_2_1/aop/src/main/java/org/jboss/aop/instrument/GeneratedAdvisorInstrumentor.java	2010-06-17 18:03:45 UTC (rev 106132)
@@ -440,7 +440,7 @@
       ctor.setBody(
             "{" +
             "   super(\"" + clazz.getName() + "\"); " +
-            "   initialise(org.jboss.aop.AspectManager.instance(org.jboss.aop.advice.SecurityActions.getClassLoader(this.getClass())), false);" + //Use the CL of the class, since we may be in a scoped loader
+            "   initialise(org.jboss.aop.AspectManager.instance(this.getClass()), false);" + //Use the CL of the class, since we may be in a scoped loader
             "}");
       genadvisor.addConstructor(ctor);
 



More information about the jboss-cvs-commits mailing list