[jboss-svn-commits] JBL Code SVN: r20745 - in labs/jbossrules/trunk/drools-clips/src: main/java/org/drools/rule/builder/dialect/clips and 1 other directories.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Tue Jun 24 22:10:48 EDT 2008


Author: mark.proctor at jboss.com
Date: 2008-06-24 22:10:48 -0400 (Tue, 24 Jun 2008)
New Revision: 20745

Modified:
   labs/jbossrules/trunk/drools-clips/src/main/java/org/drools/clips/Shell.java
   labs/jbossrules/trunk/drools-clips/src/main/java/org/drools/rule/builder/dialect/clips/ClipsDialect.java
   labs/jbossrules/trunk/drools-clips/src/test/java/org/drools/clips/ShellTest.java
Log:
JBRULES-720 Clips Parser
-getting deffunction and builtin functions to work.

Modified: labs/jbossrules/trunk/drools-clips/src/main/java/org/drools/clips/Shell.java
===================================================================
--- labs/jbossrules/trunk/drools-clips/src/main/java/org/drools/clips/Shell.java	2008-06-25 02:08:34 UTC (rev 20744)
+++ labs/jbossrules/trunk/drools-clips/src/main/java/org/drools/clips/Shell.java	2008-06-25 02:10:48 UTC (rev 20745)
@@ -169,8 +169,7 @@
         this.moduleName = MAIN;
         this.ruleBase = ruleBase;
 
-        this.packageBuilder = new PackageBuilder();
-        this.packageBuilder.setRuleBase( this.ruleBase );
+        this.packageBuilder = new PackageBuilder( this.ruleBase );
 
         this.session = this.ruleBase.newStatefulSession();
         // this.functions = new HashMap();
@@ -253,7 +252,9 @@
     }
 
     public void functionHandler(FunctionDescr functionDescr) {
-        setModuleName( functionDescr );
+        // for now all functions are in MAIN
+        //setModuleName( functionDescr );
+        functionDescr.setNamespace( "MAIN" );
         Appendable builder = new StringBuilderAppendable();
 
         // strip lead/trailing quotes
@@ -284,22 +285,12 @@
         builder.append( "}" );
 
         functionDescr.setContent( builder.toString() );
-        functionDescr.setDialect( "mvel" );
+        functionDescr.setDialect( "clips" );
 
         PackageDescr pkgDescr = createPackageDescr( functionDescr.getNamespace() );
         pkgDescr.addFunction( functionDescr );
 
-        PackageBuilderConfiguration conf = new PackageBuilderConfiguration();
-        conf.getDialectConfiguration( "mvel" );
-        MVELDialectConfiguration mvelConf = (MVELDialectConfiguration) conf.getDialectConfiguration( "mvel" );
-        mvelConf.setLangLevel( 5 );
-
-        PackageBuilder pkgBuilder = new PackageBuilder( conf );
-        pkgBuilder.addPackage( pkgDescr );
-
-        if ( pkgBuilder.getErrors().isEmpty() ) {
-            this.ruleBase.addPackage( pkgBuilder.getPackage() );
-        }
+        this.packageBuilder.addPackage( pkgDescr );
     }
 
     public void lispFormHandler(LispForm lispForm) {
@@ -333,7 +324,7 @@
                 e.printStackTrace();
             }
 
-            MVELDialectRuntimeData data = (MVELDialectRuntimeData) pkg.getDialectRuntimeRegistry().getDialectData( "mvel" );
+            MVELDialectRuntimeData data = (MVELDialectRuntimeData) pkg.getDialectRuntimeRegistry().getDialectData( "clips" );
             this.factory.setNextFactory( data.getFunctionFactory() );
         }
 

Modified: labs/jbossrules/trunk/drools-clips/src/main/java/org/drools/rule/builder/dialect/clips/ClipsDialect.java
===================================================================
--- labs/jbossrules/trunk/drools-clips/src/main/java/org/drools/rule/builder/dialect/clips/ClipsDialect.java	2008-06-25 02:08:34 UTC (rev 20744)
+++ labs/jbossrules/trunk/drools-clips/src/main/java/org/drools/rule/builder/dialect/clips/ClipsDialect.java	2008-06-25 02:10:48 UTC (rev 20745)
@@ -23,7 +23,7 @@
     public ClipsDialect(PackageBuilder builder,
                                    PackageRegistry pkgRegistry,
                                    Package pkg) {
-        super( builder, pkgRegistry, pkg);
+        super( builder, pkgRegistry, pkg, ID);
         setLanguageLevel( 5 );
 
     }

Modified: labs/jbossrules/trunk/drools-clips/src/test/java/org/drools/clips/ShellTest.java
===================================================================
--- labs/jbossrules/trunk/drools-clips/src/test/java/org/drools/clips/ShellTest.java	2008-06-25 02:08:34 UTC (rev 20744)
+++ labs/jbossrules/trunk/drools-clips/src/test/java/org/drools/clips/ShellTest.java	2008-06-25 02:10:48 UTC (rev 20745)
@@ -147,7 +147,7 @@
     }
 
     // @FIXME - org.mvel.CompileException: unable to resolve property: unable to resolve method: org.drools.clips.Shell.max(java.lang.Integer, java.lang.Integer) [arglength=2]
-    public void FIXME_testDeffunction() {
+    public void testDeffunction() {
         String function = "(deffunction max (?a ?b) (if (> ?a ?b) then (return ?a) else (return ?b) ) )";
         this.shell.eval( function );
 
@@ -302,7 +302,7 @@
     }
 
     // @FIXME - org.mvel.PropertyAccessException: unable to resolve property: run()
-    public void FIXME_testRuleCallDeftemplate() {
+    public void testRuleCallDeftemplate() {
         String function = "(deffunction max (?a ?b) (if (> ?a ?b) then (return ?a) else (return ?b) ) )";
         this.shell.eval( function );
         




More information about the jboss-svn-commits mailing list