[jboss-svn-commits] JBL Code SVN: r25373 - labs/jbossrules/trunk/drools-clips/src/main/java/org/drools/clips.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Fri Feb 20 23:37:56 EST 2009


Author: mark.proctor at jboss.com
Date: 2009-02-20 23:37:56 -0500 (Fri, 20 Feb 2009)
New Revision: 25373

Modified:
   labs/jbossrules/trunk/drools-clips/src/main/java/org/drools/clips/ClipsShell.java
Log:
JBRULES-1976 Globals and Environment should be able to take a delegate

Modified: labs/jbossrules/trunk/drools-clips/src/main/java/org/drools/clips/ClipsShell.java
===================================================================
--- labs/jbossrules/trunk/drools-clips/src/main/java/org/drools/clips/ClipsShell.java	2009-02-21 03:11:49 UTC (rev 25372)
+++ labs/jbossrules/trunk/drools-clips/src/main/java/org/drools/clips/ClipsShell.java	2009-02-21 04:37:56 UTC (rev 25373)
@@ -63,6 +63,7 @@
 import org.drools.rule.MVELDialectRuntimeData;
 import org.drools.rule.Namespaceable;
 import org.drools.rule.Package;
+import org.drools.runtime.Globals;
 import org.drools.runtime.rule.FactHandle;
 import org.drools.spi.GlobalResolver;
 import org.mvel2.MVEL;
@@ -287,42 +288,54 @@
         implements
         GlobalResolver {
         private Map<String, Object> vars;
-        private GlobalResolver      resolver;
+        private Globals      delegate;
 
         public GlobalResolver2() {
         }
 
         public GlobalResolver2(Map<String, Object> vars,
-                               GlobalResolver resolver) {
+                               Globals delegate) {
             this.vars = vars;
-            this.resolver = resolver;
+            this.delegate = delegate;
         }
 
         public void readExternal(ObjectInput in) throws IOException,
                                                 ClassNotFoundException {
             vars = (Map<String, Object>) in.readObject();
-            resolver = (GlobalResolver) in.readObject();
+            delegate = (GlobalResolver) in.readObject();
         }
 
         public void writeExternal(ObjectOutput out) throws IOException {
             out.writeObject( vars );
-            out.writeObject( resolver );
+            out.writeObject( delegate );
         }
 
         public Object resolveGlobal(String identifier) {
             Object object = this.vars.get( identifier );
             if ( object == null ) {
-                object = resolver.resolveGlobal( identifier );
+                object = delegate.get( identifier );
             }
             return object;
         }
 
         public void setGlobal(String identifier,
                               Object value) {
-            this.resolver.setGlobal( identifier,
+            this.delegate.set( identifier,
                                      value );
+        }
 
+        public Object get(String identifier) {
+            return resolveGlobal( identifier );
         }
+
+        public void set(String identifier,
+                        Object value) {
+            setGlobal( identifier, value );
+        }
+
+        public void setDelegate(Globals delegate) {
+            this.delegate = delegate;
+        }
     }
 
     public void importHandler(ImportDescr descr) {




More information about the jboss-svn-commits mailing list