[jboss-svn-commits] JBL Code SVN: r7597 - in labs/jbossrules/branches/3.0.x/drools-core/src/main/java/org/drools: . base

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Tue Nov 14 14:22:03 EST 2006


Author: tirelli
Date: 2006-11-14 14:21:59 -0500 (Tue, 14 Nov 2006)
New Revision: 7597

Modified:
   labs/jbossrules/branches/3.0.x/drools-core/src/main/java/org/drools/WorkingMemory.java
   labs/jbossrules/branches/3.0.x/drools-core/src/main/java/org/drools/base/ClassFieldExtractorFactory.java
Log:
Small classloader fix

Modified: labs/jbossrules/branches/3.0.x/drools-core/src/main/java/org/drools/WorkingMemory.java
===================================================================
--- labs/jbossrules/branches/3.0.x/drools-core/src/main/java/org/drools/WorkingMemory.java	2006-11-14 18:26:22 UTC (rev 7596)
+++ labs/jbossrules/branches/3.0.x/drools-core/src/main/java/org/drools/WorkingMemory.java	2006-11-14 19:21:59 UTC (rev 7597)
@@ -209,6 +209,18 @@
      */
     FactHandle assertObject(Object object) throws FactException;
 
+    /**
+     * Retrieve the QueryResults of the specified query.
+     *
+     * @param query
+     *            The name of the query.
+     *
+     * @return The QueryResults of the specified query.
+     *         If no results match the query it is empty.
+     *         
+     * @throws IllegalArgumentException 
+     *         if no query named "query" is found in the rulebase         
+     */ 
     public QueryResults getQueryResults(String query);
 
     /**

Modified: labs/jbossrules/branches/3.0.x/drools-core/src/main/java/org/drools/base/ClassFieldExtractorFactory.java
===================================================================
--- labs/jbossrules/branches/3.0.x/drools-core/src/main/java/org/drools/base/ClassFieldExtractorFactory.java	2006-11-14 18:26:22 UTC (rev 7596)
+++ labs/jbossrules/branches/3.0.x/drools-core/src/main/java/org/drools/base/ClassFieldExtractorFactory.java	2006-11-14 19:21:59 UTC (rev 7597)
@@ -63,7 +63,11 @@
                                        fieldType,
                                        clazz.isInterface() );
             // use bytes to get a class 
-            final ByteArrayClassLoader classLoader = new ByteArrayClassLoader( Thread.currentThread().getContextClassLoader() );
+            ClassLoader parent = Thread.currentThread().getContextClassLoader();
+            if( parent == null ) {
+                parent = ClassFieldExtractorFactory.class.getClassLoader();
+            }
+            final ByteArrayClassLoader classLoader = new ByteArrayClassLoader( parent );
             final Class newClass = classLoader.defineClass( className.replace( '/',
                                                                                '.' ),
                                                             bytes );




More information about the jboss-svn-commits mailing list