[jboss-cvs] JBossAS SVN: r70773 - in projects/aop/trunk: aop/src/main/org/jboss/aop/classpool and 4 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Wed Mar 12 11:03:58 EDT 2008


Author: kabir.khan at jboss.com
Date: 2008-03-12 11:03:58 -0400 (Wed, 12 Mar 2008)
New Revision: 70773

Modified:
   projects/aop/trunk/aop/src/main/org/jboss/aop/AspectManager.java
   projects/aop/trunk/aop/src/main/org/jboss/aop/ClassInstanceAdvisor.java
   projects/aop/trunk/aop/src/main/org/jboss/aop/GeneratedInstanceAdvisorMixin.java
   projects/aop/trunk/aop/src/main/org/jboss/aop/classpool/AOPClassPool.java
   projects/aop/trunk/aop/src/main/org/jboss/aop/classpool/AOPClassPoolRepository.java
   projects/aop/trunk/aop/src/main/org/jboss/aop/instrument/Instrumentor.java
   projects/aop/trunk/aop/src/test/org/jboss/test/aop/jdk15/dynamic/common/scenario/ScenarioRunner.java
   projects/aop/trunk/asintegration/src/main/org/jboss/aop/asintegration/jboss4/ScopedJBossClassPool.java
   projects/aop/trunk/asintegration/src/main/org/jboss/aop/deployment/AspectManagerService.java
Log:
Tidyup, add generics

Modified: projects/aop/trunk/aop/src/main/org/jboss/aop/AspectManager.java
===================================================================
--- projects/aop/trunk/aop/src/main/org/jboss/aop/AspectManager.java	2008-03-12 14:25:57 UTC (rev 70772)
+++ projects/aop/trunk/aop/src/main/org/jboss/aop/AspectManager.java	2008-03-12 15:03:58 UTC (rev 70773)
@@ -682,7 +682,7 @@
 
    // Public -------------------------------------------------------
 
-   public static Map getRegisteredCLs()
+   public static Map<ClassLoader, ClassPool> getRegisteredCLs()
    {
       return AOPClassPoolRepository.getInstance().getRegisteredCLs();
    }
@@ -732,7 +732,7 @@
 
    protected ClassPool getRegisteredClassPool(ClassLoader cl)
    {
-      return (ClassPool)getRegisteredCLs().get(cl);
+      return getRegisteredCLs().get(cl);
    }
 
    public ClassPool registerClassLoader(ClassLoader ucl)

Modified: projects/aop/trunk/aop/src/main/org/jboss/aop/ClassInstanceAdvisor.java
===================================================================
--- projects/aop/trunk/aop/src/main/org/jboss/aop/ClassInstanceAdvisor.java	2008-03-12 14:25:57 UTC (rev 70772)
+++ projects/aop/trunk/aop/src/main/org/jboss/aop/ClassInstanceAdvisor.java	2008-03-12 15:03:58 UTC (rev 70773)
@@ -351,7 +351,7 @@
    protected void finalize()
    {
       ClassLoader classLoader = getClassAdvisor().getClazz().getClassLoader();
-      if (this.interceptorChainObserver == null || !getClassAdvisor().getManager().getRegisteredCLs().containsKey(classLoader))
+      if (this.interceptorChainObserver == null || !AspectManager.getRegisteredCLs().containsKey(classLoader))
       {
          return;
       }

Modified: projects/aop/trunk/aop/src/main/org/jboss/aop/GeneratedInstanceAdvisorMixin.java
===================================================================
--- projects/aop/trunk/aop/src/main/org/jboss/aop/GeneratedInstanceAdvisorMixin.java	2008-03-12 14:25:57 UTC (rev 70772)
+++ projects/aop/trunk/aop/src/main/org/jboss/aop/GeneratedInstanceAdvisorMixin.java	2008-03-12 15:03:58 UTC (rev 70773)
@@ -48,7 +48,7 @@
 
    protected ArrayList<Interceptor> insertedInterceptors = null;
    protected ArrayList<Interceptor> appendedInterceptors = null;
-   protected WeakReference instanceRef;
+   protected WeakReference<Object> instanceRef;
    public boolean hasInstanceAspects = false;
    private InterceptorChainObserver interceptorChainObserver;
    InstanceAdvisorDelegate delegate;
@@ -59,7 +59,7 @@
 
    public GeneratedInstanceAdvisorMixin(Object instance, GeneratedClassAdvisor genadvisor)
    {
-      this.instanceRef = new WeakReference(instance);
+      this.instanceRef = new WeakReference<Object>(instance);
       delegate = new InstanceAdvisorDelegate(genadvisor, this);
       delegate.initialize();
       this.interceptorChainObserver = ((ClassAdvisor) genadvisor).getInterceptorChainObserver();
@@ -381,7 +381,7 @@
    protected void finalize()
    {
       ClassLoader classLoader = delegate.getAdvisor().getClazz().getClassLoader();
-      if (this.interceptorChainObserver == null || !delegate.getAdvisor().getManager().getRegisteredCLs().containsKey(classLoader))
+      if (this.interceptorChainObserver == null || !AspectManager.getRegisteredCLs().containsKey(classLoader))
       {
          return;
       }

Modified: projects/aop/trunk/aop/src/main/org/jboss/aop/classpool/AOPClassPool.java
===================================================================
--- projects/aop/trunk/aop/src/main/org/jboss/aop/classpool/AOPClassPool.java	2008-03-12 14:25:57 UTC (rev 70772)
+++ projects/aop/trunk/aop/src/main/org/jboss/aop/classpool/AOPClassPool.java	2008-03-12 15:03:58 UTC (rev 70773)
@@ -22,7 +22,6 @@
 package org.jboss.aop.classpool;
 
 import java.lang.ref.WeakReference;
-import java.util.Iterator;
 import java.util.Map;
 import java.util.concurrent.ConcurrentHashMap;
 
@@ -104,13 +103,12 @@
             Object o = generatedClasses.get(classname);
             if (o == null)
             {
-               Map registeredCLs = AspectManager.getRegisteredCLs();
+               Map<ClassLoader, ClassPool> registeredCLs = AspectManager.getRegisteredCLs();
                synchronized (registeredCLs)
                {
-                  Iterator it = registeredCLs.values().iterator();
-                  while (it.hasNext())
+                  for(ClassPool pl : AspectManager.getRegisteredCLs().values())
                   {
-                     AOPClassPool pool = (AOPClassPool) it.next();
+                     AOPClassPool pool = (AOPClassPool) pl;
                      if (pool.isUnloadedClassLoader())
                      {
                         AspectManager.instance().unregisterClassLoader(pool.getClassLoader());
@@ -158,7 +156,7 @@
    protected boolean isLocalResource(String resourceName)
    {
       String classResourceName = getResourceName(resourceName);
-      Boolean isLocal = (Boolean)localResources.get(classResourceName);
+      Boolean isLocal = localResources.get(classResourceName);
       if (isLocal != null)
       {
          return isLocal.booleanValue();

Modified: projects/aop/trunk/aop/src/main/org/jboss/aop/classpool/AOPClassPoolRepository.java
===================================================================
--- projects/aop/trunk/aop/src/main/org/jboss/aop/classpool/AOPClassPoolRepository.java	2008-03-12 14:25:57 UTC (rev 70772)
+++ projects/aop/trunk/aop/src/main/org/jboss/aop/classpool/AOPClassPoolRepository.java	2008-03-12 15:03:58 UTC (rev 70773)
@@ -28,7 +28,6 @@
 import java.security.PrivilegedExceptionAction;
 import java.util.HashMap;
 import java.util.HashSet;
-import java.util.Iterator;
 import java.util.Map;
 
 import org.jboss.aop.Advisor;
@@ -56,7 +55,7 @@
    private final static AOPClassPoolRepository instance = new AOPClassPoolRepository();
    
    /** The classes per classppol */
-   protected final HashMap ucl2classes = new HashMap();
+   protected final HashMap<ClassLoader, HashSet<Class<?>>> ucl2classes = new HashMap<ClassLoader, HashSet<Class<?>>>();
 
    /** The top-level AspectManager this pool belongs to */
    AspectManager manager;
@@ -140,7 +139,7 @@
     * 
     * @return the registered classloaders
     */
-   public Map getRegisteredCLs()
+   public Map<ClassLoader, ClassPool> getRegisteredCLs()
    {
       return delegate.getRegisteredCLs();
    }
@@ -163,12 +162,12 @@
       delegate.unregisterClassLoader(cl);
    }
    
-   public void registerClass(Class clazz)
+   public void registerClass(Class<?> clazz)
    {
-      HashSet classes = (HashSet) ucl2classes.get(clazz.getClassLoader());
+      HashSet<Class<?>> classes = ucl2classes.get(clazz.getClassLoader());
       if (classes == null)
       {
-         classes = new HashSet();
+         classes = new HashSet<Class<?>>();
          ucl2classes.put(clazz.getClassLoader(), classes);
       }
       classes.add(clazz);
@@ -190,26 +189,24 @@
    {
       synchronized (delegate.getRegisteredCLs())
       {
-         HashSet classes = (HashSet) ucl2classes.remove(cl);
+         HashSet<Class<?>> classes = ucl2classes.remove(cl);
          if (classes != null)
          {
-            Iterator it = classes.iterator();
-            while (it.hasNext())
+            for (Class<?> clazz : classes)
             {
-               Object clazz = it.next();
                synchronized (manager.getAdvisors())
                {
-                  WeakReference ref = (WeakReference)manager.getAdvisors().get(clazz);
+                  WeakReference<Advisor> ref = manager.getAdvisors().get(clazz);
                   if (ref != null)
                   {
-                     Advisor advisor = (Advisor)ref.get();
+                     Advisor advisor = ref.get();
                      manager.getAdvisors().remove(clazz);
                      if (advisor != null)
                      {
                         advisor.cleanup();
                      }
                   }
-                  Class advisedClass = (Class)clazz;
+                  Class<?> advisedClass = clazz;
                   try
                   {
                      //The static advisor field should be the only remaining hard reference to the advisor
@@ -242,7 +239,7 @@
          {
             try
             {
-               AccessController.doPrivileged(new PrivilegedExceptionAction()
+               AccessController.doPrivileged(new PrivilegedExceptionAction<Object>()
                {
                   public Object run()
                   {

Modified: projects/aop/trunk/aop/src/main/org/jboss/aop/instrument/Instrumentor.java
===================================================================
--- projects/aop/trunk/aop/src/main/org/jboss/aop/instrument/Instrumentor.java	2008-03-12 14:25:57 UTC (rev 70772)
+++ projects/aop/trunk/aop/src/main/org/jboss/aop/instrument/Instrumentor.java	2008-03-12 15:03:58 UTC (rev 70773)
@@ -972,7 +972,6 @@
          }
          // instrument classes that access the joinpoints whose status have changed, in
          // order to make this classes access the joinpoint wrapper instead
-         Collection classPools = manager.getRegisteredCLs().values();
          Collection conversionsRegistered = new HashSet();
          synchronized(this.processedClasses)
          {

Modified: projects/aop/trunk/aop/src/test/org/jboss/test/aop/jdk15/dynamic/common/scenario/ScenarioRunner.java
===================================================================
--- projects/aop/trunk/aop/src/test/org/jboss/test/aop/jdk15/dynamic/common/scenario/ScenarioRunner.java	2008-03-12 14:25:57 UTC (rev 70772)
+++ projects/aop/trunk/aop/src/test/org/jboss/test/aop/jdk15/dynamic/common/scenario/ScenarioRunner.java	2008-03-12 15:03:58 UTC (rev 70773)
@@ -24,6 +24,7 @@
 
 import java.util.Map;
 
+import javassist.ClassPool;
 import javassist.CtClass;
 import javassist.CtField;
 import javassist.CtMethod;
@@ -323,7 +324,7 @@
     */
    private static void loadPOJOData()
    {
-      Map cls = AspectManager.instance().getRegisteredCLs();
+      Map<ClassLoader, ClassPool> cls = AspectManager.getRegisteredCLs();
       AOPClassPool classPool = (AOPClassPool) cls.get(POJO.class.getClassLoader());
       try
       {

Modified: projects/aop/trunk/asintegration/src/main/org/jboss/aop/asintegration/jboss4/ScopedJBossClassPool.java
===================================================================
--- projects/aop/trunk/asintegration/src/main/org/jboss/aop/asintegration/jboss4/ScopedJBossClassPool.java	2008-03-12 14:25:57 UTC (rev 70772)
+++ projects/aop/trunk/asintegration/src/main/org/jboss/aop/asintegration/jboss4/ScopedJBossClassPool.java	2008-03-12 15:03:58 UTC (rev 70773)
@@ -22,10 +22,8 @@
 package org.jboss.aop.asintegration.jboss4;
 
 import java.io.File;
-import java.lang.ref.WeakReference;
 import java.net.URL;
 import java.util.ArrayList;
-import java.util.Iterator;
 
 import org.jboss.aop.AspectManager;
 import org.jboss.aop.classpool.AOPClassPool;
@@ -50,9 +48,8 @@
 {
    final static LoaderRepositoryUrlUtil LOADER_REPOSITORY_UTIL = new LoaderRepositoryUrlUtil();
    
-   WeakReference repository = null;
-   UrlInfo urlInfo;
-   ThreadLocal lastPool = new ThreadLocal();
+   private UrlInfo urlInfo;
+   private ThreadLocal<ClassPool> lastPool = new ThreadLocal<ClassPool>();
 
    public ScopedJBossClassPool(ClassLoader cl, ClassPool src, ScopedClassPoolRepository repository, File tmp, URL tmpURL)
    {
@@ -201,11 +198,11 @@
       {
          //JBoss 5 has an extra NoAnnotationURLCLassLoader that is not on the default path, make sure that that is checked at the end
          //FIXME This needs revisiting/removing once the 
-         ArrayList noAnnotationURLClassLoaderPools = null;
+         ArrayList<AOPClassPool> noAnnotationURLClassLoaderPools = null;
          String resource = url.toString();
-         for(Iterator it = AspectManager.getRegisteredCLs().values().iterator() ; it.hasNext() ; )
+         for(ClassPool pool : AspectManager.getRegisteredCLs().values())
          {
-            AOPClassPool candidate = (AOPClassPool)it.next();
+            AOPClassPool candidate = (AOPClassPool)pool;
             if (candidate.isUnloadedClassLoader())
             {
                AspectManager.instance().unregisterClassLoader(candidate.getClassLoader());
@@ -231,7 +228,7 @@
             {
                if (noAnnotationURLClassLoaderPools == null)
                {
-                  noAnnotationURLClassLoaderPools = new ArrayList(); 
+                  noAnnotationURLClassLoaderPools = new ArrayList<AOPClassPool>(); 
                }
                noAnnotationURLClassLoaderPools.add(candidate);
             }
@@ -240,10 +237,8 @@
          //FIXME Remove once we have the JBoss 5 version of pool
          if (noAnnotationURLClassLoaderPools != null)
          {
-            for (Iterator it = noAnnotationURLClassLoaderPools.iterator() ; it.hasNext() ; )
+            for (AOPClassPool pool : noAnnotationURLClassLoaderPools)
             {
-               ClassPool pool = (ClassPool)it.next();
-               
                try
                {
                   pool.get(classname);
@@ -264,7 +259,7 @@
     */
    private boolean isInstanceOfNoAnnotationURLClassLoader(ClassLoader loader)
    {
-      Class parent = loader.getClass();
+      Class<?> parent = loader.getClass();
       while (parent != null)
       {
          if ("NoAnnotationURLClassLoader".equals(parent.getSimpleName()))

Modified: projects/aop/trunk/asintegration/src/main/org/jboss/aop/deployment/AspectManagerService.java
===================================================================
--- projects/aop/trunk/asintegration/src/main/org/jboss/aop/deployment/AspectManagerService.java	2008-03-12 14:25:57 UTC (rev 70772)
+++ projects/aop/trunk/asintegration/src/main/org/jboss/aop/deployment/AspectManagerService.java	2008-03-12 15:03:58 UTC (rev 70773)
@@ -25,11 +25,11 @@
 import java.io.FileNotFoundException;
 import java.net.URL;
 import java.util.ArrayList;
-import java.util.Iterator;
 import java.util.List;
 import java.util.Map;
 import java.util.StringTokenizer;
 
+import javassist.ClassPool;
 import javassist.scopedpool.ScopedClassPoolFactory;
 
 import javax.management.Notification;
@@ -46,6 +46,11 @@
 import org.jboss.aop.hook.JDK14TransformerManager;
 import org.jboss.aop.instrument.InstrumentorFactory;
 import org.jboss.aop.instrument.TransformerCommon;
+import org.jboss.aop.introduction.InterfaceIntroduction;
+import org.jboss.aop.advice.AdviceBinding;
+import org.jboss.aop.advice.AdviceStack;
+import org.jboss.aop.advice.AspectDefinition;
+import org.jboss.aop.advice.InterceptorFactory;
 import org.jboss.aop.asintegration.JBossIntegration;
 import org.jboss.aop.asintegration.jboss4.JBoss4Integration;
 import org.jboss.logging.Logger;
@@ -72,7 +77,7 @@
       //When AspectManager.translate() is called the first time, these classes have not been loaded yet, and this is what causes
       //JRockit to get confused
       @SuppressWarnings("unused")
-      Class clazz = TransformerCommon.class;
+      Class<?> clazz = TransformerCommon.class;
       clazz = SuperClassesFirstWeavingStrategy.class;
       clazz = ClassicWeavingStrategy.class;
       clazz = HeirarchicalLoaderRepository3.class;
@@ -451,12 +456,11 @@
     */
    public String interceptorFactories()
    {
-      Map factories = AspectManager.instance().getInterceptorFactories();
-      Iterator it = factories.keySet().iterator();
+      Map<String, InterceptorFactory> factories = AspectManager.instance().getInterceptorFactories();
       StringBuffer buffer = new StringBuffer("");
-      while (it.hasNext())
+      for (String name : factories.keySet())
       {
-         buffer.append(it.next() + "<br>");
+         buffer.append(name + "<br>");
       }
       return buffer.toString();
    }
@@ -466,60 +470,55 @@
     */
    public String aspectDefinitions()
    {
-      Map factories = AspectManager.instance().getAspectDefinitions();
-      Iterator it = factories.keySet().iterator();
+      Map<String, AspectDefinition> factories = AspectManager.instance().getAspectDefinitions();
       StringBuffer buffer = new StringBuffer("");
-      while (it.hasNext())
+      for (String name : factories.keySet())
       {
-         buffer.append(it.next() + "<br>");
+         buffer.append(name + "<br>");
       }
       return buffer.toString();
    }
 
    public String introductions()
    {
-      Map factories = AspectManager.instance().getInterfaceIntroductions();
-      Iterator it = factories.keySet().iterator();
+      Map<String, InterfaceIntroduction> factories = AspectManager.instance().getInterfaceIntroductions();
       StringBuffer buffer = new StringBuffer("");
-      while (it.hasNext())
+      for (String name : factories.keySet())
       {
-         buffer.append(it.next() + "<br>");
+         buffer.append(name + "<br>");
       }
       return buffer.toString();
    }
 
    public String stacks()
    {
-      Map factories = AspectManager.instance().getInterceptorStacks();
-      Iterator it = factories.keySet().iterator();
+      Map<String, AdviceStack> factories = AspectManager.instance().getInterceptorStacks();
       StringBuffer buffer = new StringBuffer("");
-      while (it.hasNext())
+      for (String name : factories.keySet())
       {
-         buffer.append(it.next() + "<br>");
+         buffer.append(name + "<br>");
       }
       return buffer.toString();
    }
 
    public String bindings()
    {
-      Map factories = AspectManager.instance().getBindings();
-      Iterator it = factories.keySet().iterator();
+      Map<String, AdviceBinding> factories = AspectManager.instance().getBindings();
       StringBuffer buffer = new StringBuffer("");
-      while (it.hasNext())
+      for (String name : factories.keySet())
       {
-         buffer.append(it.next() + "<br>");
+         buffer.append(name + "<br>");
       }
       return buffer.toString();
    }
 
    public String registeredClassLoaders()
    {
-      Map factories = AspectManager.instance().getRegisteredCLs();
-      Iterator it = factories.keySet().iterator();
+      Map<ClassLoader, ClassPool> loaders = AspectManager.getRegisteredCLs();
       StringBuffer buffer = new StringBuffer("");
-      while (it.hasNext())
+      for (ClassLoader loader : loaders.keySet())
       {
-         buffer.append(it.next() + "<br>");
+         buffer.append(loader + "<br>");
       }
       return buffer.toString();
    }




More information about the jboss-cvs-commits mailing list