[jboss-cvs] JBossAS SVN: r72962 - projects/aop/trunk/aop/src/main/org/jboss/aop/instrument.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Thu May 1 18:02:58 EDT 2008


Author: flavia.rainone at jboss.com
Date: 2008-05-01 18:02:58 -0400 (Thu, 01 May 2008)
New Revision: 72962

Modified:
   projects/aop/trunk/aop/src/main/org/jboss/aop/instrument/JoinPointGenerator.java
Log:
[JBAOP-570] Task JBAOP-550 is undone.

Modified: projects/aop/trunk/aop/src/main/org/jboss/aop/instrument/JoinPointGenerator.java
===================================================================
--- projects/aop/trunk/aop/src/main/org/jboss/aop/instrument/JoinPointGenerator.java	2008-05-01 21:59:24 UTC (rev 72961)
+++ projects/aop/trunk/aop/src/main/org/jboss/aop/instrument/JoinPointGenerator.java	2008-05-01 22:02:58 UTC (rev 72962)
@@ -31,9 +31,7 @@
 import java.util.HashMap;
 import java.util.HashSet;
 import java.util.List;
-import java.util.Map;
 import java.util.Set;
-import java.util.WeakHashMap;
 
 import javassist.CannotCompileException;
 import javassist.ClassPool;
@@ -134,8 +132,8 @@
     * A cache of the generated joinpoint classes indexed by the interceptor chains for the info to 
     * avoid having to generate a new class on every single rebind
     */
-   private HashMap<String, Map<ClassLoader, GeneratedClassInfo>> generatedJoinPointClassCache =
-      new HashMap<String, Map<ClassLoader, GeneratedClassInfo>>();
+   private HashMap<String, GeneratedClassInfo> generatedJoinPointClassCache =
+      new HashMap<String, GeneratedClassInfo>();
    
    /**
     * Constructor.
@@ -273,29 +271,18 @@
          //Attempt to get the cached information so we don't have to recreate the class every time we rebind the joinpoint
          String infoAdviceString = info.getAdviceString();
          GeneratedClassInfo generatedClass = null;
-         Map<ClassLoader, GeneratedClassInfo> generatedClasses =
-               generatedJoinPointClassCache.get(infoAdviceString);
-         if (generatedClasses != null)
+         if (generatedJoinPointClassCache.containsKey(infoAdviceString))
          {
-            if (generatedClasses.containsKey(classloader))
-            {
-               generatedClass= generatedClasses.get(classloader);
-            }
-         }
+            generatedClass= generatedJoinPointClassCache.get(infoAdviceString);
+         }  
          else
          {
-            generatedClasses = new WeakHashMap<ClassLoader, GeneratedClassInfo>();
-            generatedJoinPointClassCache.put(infoAdviceString, generatedClasses);
-         }
-            
-         if (generatedClass == null)
-         {
             //We need to do all the work again
             AspectManager manager = AspectManager.instance();
             ClassPool pool = manager.findClassPool(classloader);
             ProtectionDomain pd = advisorClass.getProtectionDomain();
             generatedClass = generateJoinpointClass(pool, info, classloader, pd);
-            generatedClasses.put(classloader, generatedClass);
+            generatedJoinPointClassCache.put(infoAdviceString, generatedClass);
          }
          Object obj = generatedClass.createJoinPointInstance(classloader, info);
          




More information about the jboss-cvs-commits mailing list