[jboss-svn-commits] JBL Code SVN: r14562 - labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/mvel.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Sat Aug 25 23:08:32 EDT 2007


Author: mark.proctor at jboss.com
Date: 2007-08-25 23:08:32 -0400 (Sat, 25 Aug 2007)
New Revision: 14562

Modified:
   labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/mvel/DroolsMVELFactory.java
Log:
JBRULES-1127 External vars do not appear if you hve a break point on the first line
-the MVELFactory can now chose to not lazily create the resolvers

Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/mvel/DroolsMVELFactory.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/mvel/DroolsMVELFactory.java	2007-08-26 03:08:28 UTC (rev 14561)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/mvel/DroolsMVELFactory.java	2007-08-26 03:08:32 UTC (rev 14562)
@@ -2,6 +2,8 @@
 
 import java.io.Serializable;
 import java.util.HashMap;
+import java.util.Iterator;
+import java.util.List;
 import java.util.Map;
 
 import org.drools.WorkingMemory;
@@ -36,10 +38,29 @@
     public DroolsMVELFactory(final Map previousDeclarations,
                              final Map localDeclarations,
                              final Map globals) {
+        this( previousDeclarations,
+              localDeclarations,
+              globals,
+              null );        
+    }
+    
+    public DroolsMVELFactory(final Map previousDeclarations,
+                             final Map localDeclarations,
+                             final Map globals,
+                             final List[] externals) {
         this.previousDeclarations = previousDeclarations;
         this.localDeclarations = localDeclarations;
         this.globals = globals;
-    }
+        
+        if ( externals != null && MVELDebugHandler.isDebugMode() ) {
+            for( int i = 0; i < externals.length; i++ ) {
+                for ( Iterator it = externals[i].iterator(); it.hasNext(); ) {
+                    String identifier = ( String ) it.next();
+                    isResolveable( identifier );
+                }
+            }
+        }
+    }    
     
     public Map getVariableResolvers() {
         return this.variableResolvers;




More information about the jboss-svn-commits mailing list