[jboss-svn-commits] JBL Code SVN: r19121 - in labs/jbossrules/branches/fixing_bad_merge/drools-core/src/main/java/org/drools: rule and 1 other directory.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Wed Mar 19 11:21:27 EDT 2008


Author: mingjin
Date: 2008-03-19 11:21:27 -0400 (Wed, 19 Mar 2008)
New Revision: 19121

Modified:
   labs/jbossrules/branches/fixing_bad_merge/drools-core/src/main/java/org/drools/common/DroolsObjectInputStream.java
   labs/jbossrules/branches/fixing_bad_merge/drools-core/src/main/java/org/drools/rule/CompositePackageClassLoader.java
   labs/jbossrules/branches/fixing_bad_merge/drools-core/src/main/java/org/drools/rule/JavaDialectData.java
   labs/jbossrules/branches/fixing_bad_merge/drools-core/src/main/java/org/drools/rule/MapBackedClassLoader.java
   labs/jbossrules/branches/fixing_bad_merge/drools-core/src/main/java/org/drools/rule/TypeDeclaration.java
Log:
JBRULES-1488 fixed bad merge
- TypeDeclaration.java: implemented Externalization
- returning null when class not found.

Modified: labs/jbossrules/branches/fixing_bad_merge/drools-core/src/main/java/org/drools/common/DroolsObjectInputStream.java
===================================================================
--- labs/jbossrules/branches/fixing_bad_merge/drools-core/src/main/java/org/drools/common/DroolsObjectInputStream.java	2008-03-19 14:54:15 UTC (rev 19120)
+++ labs/jbossrules/branches/fixing_bad_merge/drools-core/src/main/java/org/drools/common/DroolsObjectInputStream.java	2008-03-19 15:21:27 UTC (rev 19121)
@@ -479,6 +479,9 @@
             Class clazz = primClasses.get( className );
             if ( clazz == null ) {
                 clazz = getClassLoader().loadClass( className );
+                if (clazz == null) {
+                  clazz = getClass().getClassLoader().loadClass(className);
+                }
             }
             return clazz;
         }

Modified: labs/jbossrules/branches/fixing_bad_merge/drools-core/src/main/java/org/drools/rule/CompositePackageClassLoader.java
===================================================================
--- labs/jbossrules/branches/fixing_bad_merge/drools-core/src/main/java/org/drools/rule/CompositePackageClassLoader.java	2008-03-19 14:54:15 UTC (rev 19120)
+++ labs/jbossrules/branches/fixing_bad_merge/drools-core/src/main/java/org/drools/rule/CompositePackageClassLoader.java	2008-03-19 15:21:27 UTC (rev 19121)
@@ -1,45 +1,22 @@
 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, Externalizable  {
+public class CompositePackageClassLoader extends ClassLoader implements DroolsClassLoader  {
 
-    private List classLoaders  = new ArrayList();
+    private final List classLoaders = new ArrayList();
 
-    public CompositePackageClassLoader() {
-    }
-
     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 {
-            this.classLoaders.add( classLoader );
-        }
+        this.classLoaders.add( classLoader );
     }
 
-    public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException {
-        classLoaders    = (List)in.readObject();
-    }
-
-    public void writeExternal(ObjectOutput out) throws IOException {
-        out.writeObject(classLoaders);
-    }
-
     public void removeClassLoader(final ClassLoader classLoader) {
         for ( final Iterator it = this.classLoaders.iterator(); it.hasNext(); ) {
             if ( it.next() == classLoader ) {
@@ -80,7 +57,7 @@
                 if ( parent != null ) {
                     clazz = parent.loadClass( name );
                 } else {
-                    throw new ClassNotFoundException( name );
+                    return null;
                 }
             }
         }
@@ -101,7 +78,7 @@
             if ( stream != null ) {
                 return stream;
             }
-        }        
+        }
         return stream;
     }
 

Modified: labs/jbossrules/branches/fixing_bad_merge/drools-core/src/main/java/org/drools/rule/JavaDialectData.java
===================================================================
--- labs/jbossrules/branches/fixing_bad_merge/drools-core/src/main/java/org/drools/rule/JavaDialectData.java	2008-03-19 14:54:15 UTC (rev 19120)
+++ labs/jbossrules/branches/fixing_bad_merge/drools-core/src/main/java/org/drools/rule/JavaDialectData.java	2008-03-19 15:21:27 UTC (rev 19121)
@@ -105,9 +105,6 @@
      *
      */
     public void writeExternal(ObjectOutput stream) throws IOException {
-        if (!(stream instanceof DroolsObjectOutputStream)) {
-            stream  = new DroolsObjectOutputStream(stream);
-        }
         stream.writeObject( this.store );
         stream.writeObject( this.AST );
         stream.writeObject( this.invokerLookups );
@@ -364,7 +361,7 @@
      */
     public static class PackageClassLoader extends ClassLoader
         implements
-        DroolsClassLoader, Externalizable {
+        DroolsClassLoader {
         private JavaDialectData parent;
 
         public PackageClassLoader() {
@@ -375,14 +372,6 @@
             this.parent = parent;
         }
 
-        public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException {
-            parent  = (JavaDialectData)in.readObject();
-        }
-
-        public void writeExternal(ObjectOutput out) throws IOException {
-            out.writeObject(parent);
-        }
-
         public Class fastFindClass(final String name) {
             final Class clazz = findLoadedClass( name );
 
@@ -415,12 +404,10 @@
                 final ClassLoader parent = getParent();
                 if ( parent != null ) {
                     clazz = parent.loadClass( name );
-                } else {
-                    throw new ClassNotFoundException( name );
                 }
             }
 
-            if ( resolve ) {
+            if ( resolve && clazz != null) {
                 resolveClass( clazz );
             }
 
@@ -428,14 +415,9 @@
         }
 
         protected Class findClass(final String name) throws ClassNotFoundException {
-            final Class clazz = fastFindClass( name );
-            if ( clazz == null ) {
-                throw new ClassNotFoundException( name );
-            }
-            return clazz;
+            return fastFindClass( name );
         }
 
-
         public InputStream getResourceAsStream(final String name) {
             final byte[] bytes = (byte[]) parent.store.get( name );
             if ( bytes != null ) {

Modified: labs/jbossrules/branches/fixing_bad_merge/drools-core/src/main/java/org/drools/rule/MapBackedClassLoader.java
===================================================================
--- labs/jbossrules/branches/fixing_bad_merge/drools-core/src/main/java/org/drools/rule/MapBackedClassLoader.java	2008-03-19 14:54:15 UTC (rev 19120)
+++ labs/jbossrules/branches/fixing_bad_merge/drools-core/src/main/java/org/drools/rule/MapBackedClassLoader.java	2008-03-19 15:21:27 UTC (rev 19121)
@@ -16,7 +16,7 @@
 
 public class MapBackedClassLoader extends ClassLoader
     implements
-    DroolsClassLoader, Externalizable {
+    DroolsClassLoader {
 
     private static final long             serialVersionUID = 400L;
 
@@ -32,9 +32,6 @@
         } );
     }
 
-    public MapBackedClassLoader() {
-    }
-
     public MapBackedClassLoader(final ClassLoader parentClassLoader) {
         super( parentClassLoader );
         this.store = new HashMap();
@@ -46,14 +43,6 @@
         this.store = store;
     }
 
-    public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException {
-        store    = (Map)in.readObject();
-    }
-
-    public void writeExternal(ObjectOutput out) throws IOException {
-        out.writeObject(store);
-    }
-
     public void addResource(String className,
                             byte[] bytes) {
         addClass( className,
@@ -109,8 +98,6 @@
             final ClassLoader parent = getParent();
             if ( parent != null ) {
                 clazz = parent.loadClass( name );
-            } else {
-                throw new ClassNotFoundException( name );
             }
         }
 
@@ -122,11 +109,7 @@
     }
 
     protected Class findClass(final String name) throws ClassNotFoundException {
-        final Class clazz = fastFindClass( name );
-        if ( clazz == null ) {
-            throw new ClassNotFoundException( name );
-        }
-        return clazz;
+        return fastFindClass( name );
     }
 
     public InputStream getResourceAsStream(final String name) {
@@ -135,7 +118,6 @@
             bytes = (byte[]) this.store.get( name );
         }
         
-        
         if ( bytes != null ) {
             return new ByteArrayInputStream( bytes );
         } else {

Modified: labs/jbossrules/branches/fixing_bad_merge/drools-core/src/main/java/org/drools/rule/TypeDeclaration.java
===================================================================
--- labs/jbossrules/branches/fixing_bad_merge/drools-core/src/main/java/org/drools/rule/TypeDeclaration.java	2008-03-19 14:54:15 UTC (rev 19120)
+++ labs/jbossrules/branches/fixing_bad_merge/drools-core/src/main/java/org/drools/rule/TypeDeclaration.java	2008-03-19 15:21:27 UTC (rev 19121)
@@ -21,6 +21,10 @@
 import org.drools.facttemplates.FactTemplate;
 
 import java.io.Serializable;
+import java.io.Externalizable;
+import java.io.ObjectInput;
+import java.io.IOException;
+import java.io.ObjectOutput;
 
 /**
  * The type declaration class stores all type's metadata
@@ -28,7 +32,7 @@
  *  
  * @author etirelli
  */
-public class TypeDeclaration implements Serializable {
+public class TypeDeclaration implements Externalizable {
 
     public static enum Role {
         FACT,
@@ -81,7 +85,7 @@
         }
     }
 
-    private final String typeName;
+    private String typeName;
     private Role role;
     private Format format;
     private ClockStrategy clockStrategy;
@@ -90,6 +94,9 @@
     private Class<?> typeClass;
     private FactTemplate typeTemplate;
 
+    public TypeDeclaration() {
+    }
+
     public TypeDeclaration( String typeName ) {
         this.typeName = typeName;
         this.role = Role.FACT;
@@ -101,6 +108,28 @@
         this.typeTemplate = null;
     }
 
+    public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException {
+        this.typeName = (String)in.readObject();
+        this.role = (Role)in.readObject();
+        this.format = (Format)in.readObject();
+        this.clockStrategy = (ClockStrategy)in.readObject();
+        this.durationAttribute = (String)in.readObject();
+        this.timestampAttribute = (String)in.readObject();
+        this.typeClass = (Class<?>)in.readObject();
+        this.typeTemplate = (FactTemplate)in.readObject();
+    }
+
+    public void writeExternal(ObjectOutput out) throws IOException {
+        out.writeObject(typeName);
+        out.writeObject(role);
+        out.writeObject(format);
+        out.writeObject(clockStrategy);
+        out.writeObject(durationAttribute);
+        out.writeObject(timestampAttribute);
+        out.writeObject(typeClass);
+        out.writeObject(typeTemplate);
+    }
+
     /**
      * @return the type
      */




More information about the jboss-svn-commits mailing list