[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