[jboss-svn-commits] JBL Code SVN: r19050 - labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Tue Mar 18 09:41:28 EDT 2008


Author: mingjin
Date: 2008-03-18 09:41:28 -0400 (Tue, 18 Mar 2008)
New Revision: 19050

Modified:
   labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/CompositePackageClassLoader.java
Log:
JBRULES-1488 cleanup
- CompositePackageClassLoader.java - removed unnecessary checks in addClassLoader(..).

Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/CompositePackageClassLoader.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/CompositePackageClassLoader.java	2008-03-18 03:00:46 UTC (rev 19049)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/CompositePackageClassLoader.java	2008-03-18 13:41:28 UTC (rev 19050)
@@ -1,32 +1,20 @@
 package org.drools.rule;
 
 import java.io.InputStream;
-import java.io.ObjectInput;
-import java.io.IOException;
-import java.io.ObjectOutput;
-import java.io.Externalizable;
 import java.util.ArrayList;
 import java.util.Iterator;
 import java.util.List;
 
 public class CompositePackageClassLoader extends ClassLoader implements DroolsClassLoader  {
 
-    private List classLoaders  = new ArrayList();
+    private final List classLoaders = new ArrayList();
 
     public CompositePackageClassLoader(final ClassLoader parentClassLoader) {
         super( parentClassLoader );
     }
 
     public void addClassLoader(final ClassLoader classLoader) {
-        if (classLoader instanceof CompositePackageClassLoader) {
-            for (Object object : ((CompositePackageClassLoader)classLoader).classLoaders) {
-               if (!this.classLoaders.contains(object)) {
-                   this.classLoaders.add(object);
-               }
-            }
-        } else if (classLoader instanceof DroolsClassLoader && !classLoaders.contains(classLoader)) {
-            this.classLoaders.add( classLoader );
-        }
+        this.classLoaders.add( classLoader );
     }
 
     public void removeClassLoader(final ClassLoader classLoader) {
@@ -50,11 +38,11 @@
     }
 
     /**
-     * Javadocs recommend that this method not be overloaded. We overload this so that we can prioritise the fastFindClass 
+     * Javadocs recommend that this method not be overloaded. We overload this so that we can prioritise the fastFindClass
      * over method calls to parent.loadClass(name, false); and c = findBootstrapClass0(name); which the default implementation
-     * would first - hence why we call it "fastFindClass" instead of standard findClass, this indicates that we give it a 
+     * would first - hence why we call it "fastFindClass" instead of standard findClass, this indicates that we give it a
      * higher priority than normal.
-     * 
+     *
      */
     protected synchronized Class loadClass(final String name,
                                            final boolean resolve) throws ClassNotFoundException {
@@ -80,17 +68,17 @@
 
         return clazz;
     }
-    
+
     public InputStream getResourceAsStream(final String name) {
         InputStream stream =  super.getResourceAsStream( name );
-        
+
         for ( final Iterator it = this.classLoaders.iterator(); it.hasNext(); ) {
             final DroolsClassLoader classLoader = (DroolsClassLoader) it.next();
             stream = classLoader.getResourceAsStream( name );
             if ( stream != null ) {
                 return stream;
             }
-        }        
+        }
         return stream;
     }
 




More information about the jboss-svn-commits mailing list