[jboss-svn-commits] JBL Code SVN: r23334 - in labs/jbossrules/trunk/drools-compiler/src: test/java/org/drools/integrationtests and 1 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Mon Oct 6 19:52:55 EDT 2008
Author: tirelli
Date: 2008-10-06 19:52:55 -0400 (Mon, 06 Oct 2008)
New Revision: 23334
Added:
labs/jbossrules/trunk/drools-compiler/src/test/resources/org/drools/integrationtests/test_MVELrewrite.drl
Modified:
labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/rule/builder/dialect/mvel/MVELDialect.java
labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/integrationtests/MiscTest.java
Log:
Allowing MVEL to call parameterless methods without explicit ()
Modified: labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/rule/builder/dialect/mvel/MVELDialect.java
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/rule/builder/dialect/mvel/MVELDialect.java 2008-10-06 22:44:55 UTC (rev 23333)
+++ labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/rule/builder/dialect/mvel/MVELDialect.java 2008-10-06 23:52:55 UTC (rev 23334)
@@ -166,10 +166,11 @@
setLanguageLevel( this.configuration.getLangLevel() );
this.strictMode = this.configuration.isStrict();
- MVEL.setThreadSafe( true );
-
this.imports = new HashMap();
this.packageImports = new HashMap();
+
+ // setting MVEL option directly
+ MVEL.COMPILER_OPT_ALLOW_NAKED_METH_CALL = true;
this.interceptors = new HashMap( 1 );
this.interceptors.put( "Modify",
Modified: labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/integrationtests/MiscTest.java
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/integrationtests/MiscTest.java 2008-10-06 22:44:55 UTC (rev 23333)
+++ labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/integrationtests/MiscTest.java 2008-10-06 23:52:55 UTC (rev 23334)
@@ -271,6 +271,37 @@
c.getPrice() );
}
+ public void testMVELRewrite() throws Exception {
+
+ // read in the source
+ final Reader reader = new InputStreamReader( getClass().getResourceAsStream( "test_MVELrewrite.drl" ) );
+ RuleBase ruleBase = loadRuleBase( reader );
+
+ ruleBase = SerializationHelper.serializeObject( ruleBase );
+ StatefulSession session = ruleBase.newStatefulSession();
+
+ session = SerializationHelper.getSerialisedStatefulSession( session,
+ ruleBase );
+ List results = new ArrayList();
+ session.setGlobal( "results", results );
+
+ Cheese brie = new Cheese( "brie",
+ 2 );
+ Cheese stilton = new Cheese( "stilton",
+ 2 );
+ Cheesery cheesery = new Cheesery();
+ cheesery.addCheese( brie );
+ cheesery.addCheese( stilton );
+
+ session.insert( cheesery );
+ session.fireAllRules();
+
+ assertEquals( 1,
+ results.size() );
+ assertEquals( cheesery,
+ results.get( 0 ) );
+ }
+
public void testGlobals() throws Exception {
final PackageBuilder builder = new PackageBuilder();
Added: labs/jbossrules/trunk/drools-compiler/src/test/resources/org/drools/integrationtests/test_MVELrewrite.drl
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/test/resources/org/drools/integrationtests/test_MVELrewrite.drl (rev 0)
+++ labs/jbossrules/trunk/drools-compiler/src/test/resources/org/drools/integrationtests/test_MVELrewrite.drl 2008-10-06 23:52:55 UTC (rev 23334)
@@ -0,0 +1,11 @@
+package org.drools;
+
+global java.util.List results;
+
+rule "test mvel rewrite"
+ dialect "mvel"
+ when
+ $c : Cheesery( cheeses.size == 2 )
+ then
+ results.add( $c );
+end
\ No newline at end of file
More information about the jboss-svn-commits
mailing list