[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