[jboss-svn-commits] JBL Code SVN: r23158 - in labs/jbossrules/branches/drools-api-refactor-20080929: drools-compiler/src/main/java/org/drools/compiler and 3 other directories.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Sun Sep 28 23:16:49 EDT 2008


Author: mark.proctor at jboss.com
Date: 2008-09-28 23:16:49 -0400 (Sun, 28 Sep 2008)
New Revision: 23158

Added:
   labs/jbossrules/branches/drools-api-refactor-20080929/drools-api/src/main/java/org/drools/KnowledgeBaseConfiguration.java
   labs/jbossrules/branches/drools-api-refactor-20080929/drools-api/src/main/java/org/drools/KnowledgeBuilderConfiguration.java
Modified:
   labs/jbossrules/branches/drools-api-refactor-20080929/drools-api/src/main/java/org/drools/KnowledgeBaseFactory.java
   labs/jbossrules/branches/drools-api-refactor-20080929/drools-api/src/main/java/org/drools/KnowledgeBaseProvider.java
   labs/jbossrules/branches/drools-api-refactor-20080929/drools-compiler/src/main/java/org/drools/compiler/PackageBuilderConfiguration.java
   labs/jbossrules/branches/drools-api-refactor-20080929/drools-compiler/src/test/java/org/drools/integrationtests/StatefulSessionTest.java
   labs/jbossrules/branches/drools-api-refactor-20080929/drools-core/src/main/java/org/drools/RuleBaseConfiguration.java
   labs/jbossrules/branches/drools-api-refactor-20080929/drools-core/src/main/java/org/drools/impl/KnowledgeBaseProviderImpl.java
Log:
JBRULES-1734 Drools API
-KnowledgeBaseFactory now takes a KnowledgeBaseConfiguration

Added: labs/jbossrules/branches/drools-api-refactor-20080929/drools-api/src/main/java/org/drools/KnowledgeBaseConfiguration.java
===================================================================
--- labs/jbossrules/branches/drools-api-refactor-20080929/drools-api/src/main/java/org/drools/KnowledgeBaseConfiguration.java	                        (rev 0)
+++ labs/jbossrules/branches/drools-api-refactor-20080929/drools-api/src/main/java/org/drools/KnowledgeBaseConfiguration.java	2008-09-29 03:16:49 UTC (rev 23158)
@@ -0,0 +1,5 @@
+package org.drools;
+
+public interface KnowledgeBaseConfiguration {
+
+}

Modified: labs/jbossrules/branches/drools-api-refactor-20080929/drools-api/src/main/java/org/drools/KnowledgeBaseFactory.java
===================================================================
--- labs/jbossrules/branches/drools-api-refactor-20080929/drools-api/src/main/java/org/drools/KnowledgeBaseFactory.java	2008-09-29 03:05:43 UTC (rev 23157)
+++ labs/jbossrules/branches/drools-api-refactor-20080929/drools-api/src/main/java/org/drools/KnowledgeBaseFactory.java	2008-09-29 03:16:49 UTC (rev 23158)
@@ -15,6 +15,13 @@
         return provider.newKnowledgeBase();
     }
     
+    public static KnowledgeBase newKnowledgeBase(KnowledgeBaseConfiguration conf) {
+        if ( provider == null ) {
+            loadProvider();
+        }        
+        return provider.newKnowledgeBase(conf);        
+    }
+    
 	private static void loadProvider() {
         try {
             // we didn't find anything in properties so lets try and us reflection

Modified: labs/jbossrules/branches/drools-api-refactor-20080929/drools-api/src/main/java/org/drools/KnowledgeBaseProvider.java
===================================================================
--- labs/jbossrules/branches/drools-api-refactor-20080929/drools-api/src/main/java/org/drools/KnowledgeBaseProvider.java	2008-09-29 03:05:43 UTC (rev 23157)
+++ labs/jbossrules/branches/drools-api-refactor-20080929/drools-api/src/main/java/org/drools/KnowledgeBaseProvider.java	2008-09-29 03:16:49 UTC (rev 23158)
@@ -1,5 +1,8 @@
 package org.drools;
 
 public interface KnowledgeBaseProvider {
+
     KnowledgeBase newKnowledgeBase();
+    KnowledgeBase newKnowledgeBase(KnowledgeBaseConfiguration conf);
+    
 }

Added: labs/jbossrules/branches/drools-api-refactor-20080929/drools-api/src/main/java/org/drools/KnowledgeBuilderConfiguration.java
===================================================================
--- labs/jbossrules/branches/drools-api-refactor-20080929/drools-api/src/main/java/org/drools/KnowledgeBuilderConfiguration.java	                        (rev 0)
+++ labs/jbossrules/branches/drools-api-refactor-20080929/drools-api/src/main/java/org/drools/KnowledgeBuilderConfiguration.java	2008-09-29 03:16:49 UTC (rev 23158)
@@ -0,0 +1,5 @@
+package org.drools;
+
+public interface KnowledgeBuilderConfiguration {
+
+}

Modified: labs/jbossrules/branches/drools-api-refactor-20080929/drools-compiler/src/main/java/org/drools/compiler/PackageBuilderConfiguration.java
===================================================================
--- labs/jbossrules/branches/drools-api-refactor-20080929/drools-compiler/src/main/java/org/drools/compiler/PackageBuilderConfiguration.java	2008-09-29 03:05:43 UTC (rev 23157)
+++ labs/jbossrules/branches/drools-api-refactor-20080929/drools-compiler/src/main/java/org/drools/compiler/PackageBuilderConfiguration.java	2008-09-29 03:16:49 UTC (rev 23158)
@@ -25,6 +25,7 @@
 import java.util.Properties;
 import java.util.Map.Entry;
 
+import org.drools.KnowledgeBuilderConfiguration;
 import org.drools.RuleBaseConfiguration;
 import org.drools.RuntimeDroolsException;
 import org.drools.base.accumulators.AccumulateFunction;
@@ -67,7 +68,7 @@
  * drools.accumulate.function.count = org.drools.base.accumulators.CountAccumulateFunction
  * drools.accumulate.function.sum = org.drools.base.accumulators.SumAccumulateFunction
  */
-public class PackageBuilderConfiguration {
+public class PackageBuilderConfiguration implements KnowledgeBuilderConfiguration {
 
     private static final String        ACCUMULATE_FUNCTION_PREFIX  = "drools.accumulate.function.";
 

Modified: labs/jbossrules/branches/drools-api-refactor-20080929/drools-compiler/src/test/java/org/drools/integrationtests/StatefulSessionTest.java
===================================================================
--- labs/jbossrules/branches/drools-api-refactor-20080929/drools-compiler/src/test/java/org/drools/integrationtests/StatefulSessionTest.java	2008-09-29 03:05:43 UTC (rev 23157)
+++ labs/jbossrules/branches/drools-api-refactor-20080929/drools-compiler/src/test/java/org/drools/integrationtests/StatefulSessionTest.java	2008-09-29 03:16:49 UTC (rev 23158)
@@ -1,6 +1,14 @@
 package org.drools.integrationtests;
 
+import java.io.InputStreamReader;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.List;
+import java.util.concurrent.ExecutionException;
+import java.util.concurrent.Future;
+
 import junit.framework.TestCase;
+
 import org.drools.Cheese;
 import org.drools.FactHandle;
 import org.drools.KnowledgeBase;
@@ -9,20 +17,10 @@
 import org.drools.RuleBaseConfiguration;
 import org.drools.RuleBaseFactory;
 import org.drools.StatefulKnowledgeSession;
-import org.drools.StatefulSession;
 import org.drools.builder.KnowledgeBuilder;
 import org.drools.builder.KnowledgeBuilderFactory;
-import org.drools.compiler.PackageBuilder;
 import org.drools.knowledge.definitions.KnowledgePackage;
-import org.drools.rule.Package;
 
-import java.io.InputStreamReader;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.List;
-import java.util.concurrent.ExecutionException;
-import java.util.concurrent.Future;
-
 public class StatefulSessionTest extends TestCase {
     final List list = new ArrayList();
 
@@ -30,12 +28,6 @@
         return KnowledgeBaseFactory.newKnowledgeBase();
     }
 
-    protected RuleBase getRuleBase(final RuleBaseConfiguration config) throws Exception {
-
-        return RuleBaseFactory.newRuleBase( RuleBase.RETEOO,
-                                            config );
-    }
-
     public void testSingleObjectAssert() throws Exception {
         StatefulKnowledgeSession session = getSession();
 
@@ -198,10 +190,10 @@
     public void testSequentialException() {
         RuleBaseConfiguration config = new RuleBaseConfiguration();
         config.setSequential( true );
-        RuleBase ruleBase = RuleBaseFactory.newRuleBase( config );
+        KnowledgeBase kbase = KnowledgeBaseFactory.newKnowledgeBase( config );
         
         try {
-            ruleBase.newStatefulSession();
+            kbase.newStatefulKnowledgeSession();
             fail("cannot have a stateful session with sequential set to true" );
         } catch ( Exception e ) {
             

Modified: labs/jbossrules/branches/drools-api-refactor-20080929/drools-core/src/main/java/org/drools/RuleBaseConfiguration.java
===================================================================
--- labs/jbossrules/branches/drools-api-refactor-20080929/drools-core/src/main/java/org/drools/RuleBaseConfiguration.java	2008-09-29 03:05:43 UTC (rev 23157)
+++ labs/jbossrules/branches/drools-api-refactor-20080929/drools-core/src/main/java/org/drools/RuleBaseConfiguration.java	2008-09-29 03:16:49 UTC (rev 23158)
@@ -93,6 +93,7 @@
  */
 public class RuleBaseConfiguration
     implements
+    KnowledgeBaseConfiguration,
     Externalizable {
     private static final long              serialVersionUID = 400L;
 

Modified: labs/jbossrules/branches/drools-api-refactor-20080929/drools-core/src/main/java/org/drools/impl/KnowledgeBaseProviderImpl.java
===================================================================
--- labs/jbossrules/branches/drools-api-refactor-20080929/drools-core/src/main/java/org/drools/impl/KnowledgeBaseProviderImpl.java	2008-09-29 03:05:43 UTC (rev 23157)
+++ labs/jbossrules/branches/drools-api-refactor-20080929/drools-core/src/main/java/org/drools/impl/KnowledgeBaseProviderImpl.java	2008-09-29 03:16:49 UTC (rev 23158)
@@ -1,11 +1,17 @@
 package org.drools.impl;
 
 import org.drools.KnowledgeBase;
+import org.drools.KnowledgeBaseConfiguration;
 import org.drools.KnowledgeBaseProvider;
+import org.drools.RuleBaseConfiguration;
 import org.drools.RuleBaseFactory;
 
 public class KnowledgeBaseProviderImpl implements KnowledgeBaseProvider {
 
+    public KnowledgeBase newKnowledgeBase(KnowledgeBaseConfiguration conf) {
+        return new KnowledgeBaseImpl( RuleBaseFactory.newRuleBase( ( RuleBaseConfiguration ) conf ) );
+    }
+    
 	public KnowledgeBase newKnowledgeBase() {		
 		return new KnowledgeBaseImpl( RuleBaseFactory.newRuleBase() );		
 	}




More information about the jboss-svn-commits mailing list