[jboss-svn-commits] JBL Code SVN: r14723 - labs/jbossrules/trunk/experimental/drools-insurance/src/main/java/org/acme/insurance/base.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Wed Aug 29 06:12:03 EDT 2007
Author: michael.neale at jboss.com
Date: 2007-08-29 06:12:03 -0400 (Wed, 29 Aug 2007)
New Revision: 14723
Added:
labs/jbossrules/trunk/experimental/drools-insurance/src/main/java/org/acme/insurance/base/MVELTest.java
labs/jbossrules/trunk/experimental/drools-insurance/src/main/java/org/acme/insurance/base/mvel_test.drl
Log:
showing how to reproduce problem with MVEL
Added: labs/jbossrules/trunk/experimental/drools-insurance/src/main/java/org/acme/insurance/base/MVELTest.java
===================================================================
--- labs/jbossrules/trunk/experimental/drools-insurance/src/main/java/org/acme/insurance/base/MVELTest.java (rev 0)
+++ labs/jbossrules/trunk/experimental/drools-insurance/src/main/java/org/acme/insurance/base/MVELTest.java 2007-08-29 10:12:03 UTC (rev 14723)
@@ -0,0 +1,96 @@
+package org.acme.insurance.base;
+
+import java.io.FileInputStream;
+import java.io.FileOutputStream;
+import java.io.InputStreamReader;
+import java.io.ObjectInputStream;
+import java.io.ObjectOutputStream;
+import java.io.Reader;
+import java.io.Serializable;
+import java.io.StringReader;
+import java.util.HashMap;
+
+import junit.framework.TestCase;
+
+import org.drools.RuleBase;
+import org.drools.RuleBaseFactory;
+import org.drools.WorkingMemory;
+import org.drools.compiler.DroolsParserException;
+import org.drools.compiler.PackageBuilder;
+import org.drools.lang.descr.PackageDescr;
+import org.drools.rule.Package;
+import org.mvel.MVEL;
+
+public class MVELTest extends TestCase {
+ public void testHelloWorld() throws Exception {
+ // read in the source
+ final Reader reader = new InputStreamReader( getClass().getResourceAsStream( "mvel_test.drl" ) );
+
+
+// /* uncomment the block below to create a binary package to use the next time you run it */
+// Package pkg = loadPackage( reader );
+//
+//
+//
+// FileOutputStream out = new FileOutputStream("/Users/michaelneale/foo2.pkg");
+// ObjectOutputStream obj = new ObjectOutputStream( out );
+// obj.writeObject( pkg );
+// obj.close();
+
+
+
+ ObjectInputStream in = new ObjectInputStream( new FileInputStream("/Users/michaelneale/foo2.pkg") );
+ Package pkg2 = (Package) in.readObject();
+ // end of serialization block
+
+
+ RuleBase ruleBase = RuleBaseFactory.newRuleBase();
+
+ ruleBase.addPackage( pkg2 );
+
+ final WorkingMemory workingMemory = ruleBase.newStatefulSession();
+
+
+
+
+
+
+
+ workingMemory.insert( new Driver() );
+
+ workingMemory.fireAllRules();
+// assertEquals( 2, list.size() );
+// assertEquals( new Integer(30), list.get(0));
+// assertEquals( new Integer(22), list.get(1));
+
+ }
+
+ public Object compiledExecute(String ex) {
+ Serializable compiled = MVEL.compileExpression(ex);
+ return MVEL.executeExpression(compiled, new Object(), new HashMap());
+ }
+
+
+
+ private Package loadPackage(final Reader reader) throws DroolsParserException, Exception {
+
+ PackageBuilder builder = new PackageBuilder();
+ builder.addPackage( new PackageDescr("org.acme.insuranceXXS") );
+ builder.addPackageFromDrl( new StringReader("import org.acme.insurance.base.Approve\n" +
+ "import org.acme.insurance.base.Driver") );
+
+ builder.addPackageFromDrl( reader );
+
+
+
+ final Package pkg = builder.getPackage();
+ //assertTrue(pkg.isValid());
+ return pkg;
+ }
+
+ protected RuleBase getRuleBase() throws Exception {
+
+ return RuleBaseFactory.newRuleBase( RuleBase.RETEOO,
+ null );
+ }
+}
Property changes on: labs/jbossrules/trunk/experimental/drools-insurance/src/main/java/org/acme/insurance/base/MVELTest.java
___________________________________________________________________
Name: svn:eol-style
+ native
Added: labs/jbossrules/trunk/experimental/drools-insurance/src/main/java/org/acme/insurance/base/mvel_test.drl
===================================================================
--- labs/jbossrules/trunk/experimental/drools-insurance/src/main/java/org/acme/insurance/base/mvel_test.drl (rev 0)
+++ labs/jbossrules/trunk/experimental/drools-insurance/src/main/java/org/acme/insurance/base/mvel_test.drl 2007-08-29 10:12:03 UTC (rev 14723)
@@ -0,0 +1,9 @@
+rule "Quick approval - safe driver, any policy type"
+
+ dialect "mvel"
+ when
+ Driver( )
+ then
+ insert(new Approve(" Safe and mature "));
+ System.out.println("yeah");
+end
\ No newline at end of file
Property changes on: labs/jbossrules/trunk/experimental/drools-insurance/src/main/java/org/acme/insurance/base/mvel_test.drl
___________________________________________________________________
Name: svn:eol-style
+ native
More information about the jboss-svn-commits
mailing list