[jboss-svn-commits] JBL Code SVN: r9759 - in labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base: MVEL and 1 other directory.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Mon Feb 26 06:54:53 EST 2007


Author: mark.proctor at jboss.com
Date: 2007-02-26 06:54:53 -0500 (Mon, 26 Feb 2007)
New Revision: 9759

Added:
   labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/MVEL/
   labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/MVEL/MVELEvalExpression.java
Log:
JBRULES-708 MVEL Integration
-integration for the MVELEvalBuilder

Added: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/MVEL/MVELEvalExpression.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/MVEL/MVELEvalExpression.java	                        (rev 0)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/MVEL/MVELEvalExpression.java	2007-02-26 11:54:53 UTC (rev 9759)
@@ -0,0 +1,33 @@
+package org.drools.base.MVEL;
+
+import java.io.Serializable;
+
+import org.drools.WorkingMemory;
+import org.drools.base.DroolsMVELFactory;
+import org.drools.rule.Declaration;
+import org.drools.spi.EvalExpression;
+import org.drools.spi.Tuple;
+import org.mvel.MVEL;
+
+public class MVELEvalExpression
+    implements
+    EvalExpression {
+    
+    private final Serializable expr;
+    private final DroolsMVELFactory factory;
+    
+    public MVELEvalExpression(final Serializable expr,
+                              final DroolsMVELFactory factory) {
+        this.expr = expr;
+        this.factory = factory;
+    }
+
+    public boolean evaluate(Tuple tuple,
+                            Declaration[] requiredDeclarations,
+                            WorkingMemory workingMemory) throws Exception {                
+        factory.setContext( tuple, workingMemory );   
+        Boolean result = ( Boolean ) MVEL.executeExpression(this.expr, factory);        
+        return result.booleanValue(); 
+    }
+
+}




More information about the jboss-svn-commits mailing list