[jboss-svn-commits] JBL Code SVN: r17554 - in labs/jbossrules/trunk/drools-compiler/src: test/java/org/drools and 2 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Fri Jan 4 11:46:07 EST 2008
Author: mark.proctor at jboss.com
Date: 2008-01-04 11:46:06 -0500 (Fri, 04 Jan 2008)
New Revision: 17554
Added:
labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/process/builder/processNodeBuilder.conf
labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/process/
labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/process/builder/
labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/process/builder/ProcessNodeBuilderTest.java
labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/process/builder/StoreNodeBuilder.java
labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/process/builder/TestXmlDsl.java
Log:
JBRULES-1394 RuleFlow Nodes should be pluggable
-making unfinished test compile, as build is currently broken.
Added: labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/process/builder/processNodeBuilder.conf
===================================================================
Added: labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/process/builder/ProcessNodeBuilderTest.java
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/process/builder/ProcessNodeBuilderTest.java (rev 0)
+++ labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/process/builder/ProcessNodeBuilderTest.java 2008-01-04 16:46:06 UTC (rev 17554)
@@ -0,0 +1,9 @@
+package org.drools.process.builder;
+
+public class ProcessNodeBuilderTest {
+ public void test1() {
+
+ }
+
+
+}
Added: labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/process/builder/StoreNodeBuilder.java
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/process/builder/StoreNodeBuilder.java (rev 0)
+++ labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/process/builder/StoreNodeBuilder.java 2008-01-04 16:46:06 UTC (rev 17554)
@@ -0,0 +1,30 @@
+package org.drools.process.builder;
+
+import org.drools.compiler.Dialect;
+import org.drools.lang.descr.ActionDescr;
+import org.drools.lang.descr.ProcessDescr;
+import org.drools.rule.builder.ProcessBuildContext;
+import org.drools.ruleflow.common.core.Process;
+import org.drools.ruleflow.core.Node;
+import org.drools.ruleflow.core.impl.ActionNodeImpl;
+import org.drools.ruleflow.core.impl.DroolsConsequenceAction;
+
+public class StoreNodeBuilder
+ implements
+ ProcessNodeBuilder {
+
+ public void build(Process process,
+ ProcessDescr processDescr,
+ ProcessBuildContext context,
+ Node node) {
+ ActionNodeImpl actionNode = ( ActionNodeImpl ) node;
+ DroolsConsequenceAction action = (DroolsConsequenceAction) actionNode.getAction();
+ ActionDescr actionDescr = new ActionDescr();
+ actionDescr.setText( action.getConsequence() );
+
+ Dialect dialect = context.getDialectRegistry().getDialect( action.getDialect() );
+
+ dialect.getActionBuilder().build( context, actionNode, actionDescr );
+ }
+
+}
Added: labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/process/builder/TestXmlDsl.java
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/process/builder/TestXmlDsl.java (rev 0)
+++ labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/process/builder/TestXmlDsl.java 2008-01-04 16:46:06 UTC (rev 17554)
@@ -0,0 +1,41 @@
+package org.drools.process.builder;
+import java.io.InputStreamReader;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Properties;
+
+import org.drools.RuleBase;
+import org.drools.RuleBaseFactory;
+import org.drools.StatefulSession;
+import org.drools.compiler.PackageBuilder;
+import org.drools.compiler.PackageBuilderConfiguration;
+
+import junit.framework.TestCase;
+
+
+public class TestXmlDsl extends TestCase {
+ public void testSimpleDsl() throws Exception {
+ Properties properties = new Properties();
+ properties.put( "semanticModules", "mydsl.conf" );
+
+ PackageBuilderConfiguration conf = new PackageBuilderConfiguration( properties );
+
+ PackageBuilder builder = new PackageBuilder( conf );
+ builder.addProcessFromXml( new InputStreamReader( TestXmlDsl.class.getResourceAsStream( "XmlDslTest.xml" ) ) );
+
+ System.out.println( builder.getErrors() );
+
+ RuleBase ruleBase = RuleBaseFactory.newRuleBase();
+ ruleBase.addPackage( builder.getPackage() );
+
+ StatefulSession session = ruleBase.newStatefulSession();
+ List list = new ArrayList();
+ session.setGlobal( "list", list );
+
+ session.startProcess( "process name" );
+
+ assertEquals( 2, list.size() );
+ assertEquals( "action node was here", list.get(0) );
+ assertEquals( "dsl was here", list.get(1) );
+ }
+}
More information about the jboss-svn-commits
mailing list