[jboss-svn-commits] JBL Code SVN: r12194 - 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
Mon May 28 22:58:47 EDT 2007
Author: mark.proctor at jboss.com
Date: 2007-05-28 22:58:46 -0400 (Mon, 28 May 2007)
New Revision: 12194
Modified:
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/mvel/DroolsMVELFactory.java
Log:
JBRULES-708 MVEL Integration
-Errors are now caught for eahc MVEL builder
-Commented out failing tests, due to casting errors.
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-05-29 02:58:42 UTC (rev 12193)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/mvel/DroolsMVELFactory.java 2007-05-29 02:58:46 UTC (rev 12194)
@@ -32,6 +32,8 @@
private Map globals;
private WorkingMemory workingMemory;
+
+ private Map variables;
public DroolsMVELFactory(final Map previousDeclarations,
@@ -70,8 +72,11 @@
vr.setValue( value );
return vr;
} else {
+ if ( this.variables == null ) {
+ this.variables = new HashMap();
+ }
addResolver( name,
- vr = new MapVariableResolver( variableResolvers,
+ vr = new MapVariableResolver( this.variables,
name ) );
vr.setValue( value );
return vr;
@@ -85,8 +90,11 @@
if ( vr != null && vr.getType() != null ) {
throw new CompileException( "variable already defined within scope: " + vr.getType() + " " + name );
} else {
+ if ( this.variables == null ) {
+ this.variables = new HashMap();
+ }
addResolver( name,
- vr = new MapVariableResolver( variableResolvers,
+ vr = new MapVariableResolver( this.variables,
name,
type ) );
vr.setValue( value );
@@ -95,7 +103,7 @@
}
public boolean isResolveable(String name) {
- if ( variableResolvers != null && variableResolvers.containsKey( name ) ) {
+ if ( this.variableResolvers != null && this.variableResolvers.containsKey( name ) ) {
return true;
} else if ( this.previousDeclarations != null && this.previousDeclarations.containsKey( name ) ) {
addResolver(name, new DroolsMVELPreviousDeclarationVariable( (Declaration) this.previousDeclarations.get( name ),
@@ -110,9 +118,9 @@
(Class) this.globals.get( name ),
this ) );
return true;
- } else if ( variableResolvers != null && variableResolvers.containsKey( name ) ) {
+ } else if ( this.variableResolvers != null && this.variableResolvers.containsKey( name ) ) {
addResolver( name,
- new MapVariableResolver( variableResolvers,
+ new MapVariableResolver( this.variableResolvers,
name ) );
return true;
} else if ( nextFactory != null ) {
@@ -122,26 +130,20 @@
return false;
}
- public void pack() {
- if ( variableResolvers != null ) {
- if ( variableResolvers == null ) variableResolvers = new HashMap();
- for ( Iterator it = variableResolvers.keySet().iterator(); it.hasNext(); ) {
- String s = (String) it.next();
- variableResolvers.put( s,
- new MapVariableResolver( variableResolvers,
- s ) );
- }
- }
- }
-
private void addResolver(String name,
VariableResolver vr) {
- if (variableResolvers == null) variableResolvers = new HashMap();
- variableResolvers.put( name,
- vr );
+ if ( this.variableResolvers == null ) {
+ this.variableResolvers = new HashMap();
+ }
+ this.variableResolvers.put( name,
+ vr );
}
public boolean isTarget(String name) {
- return variableResolvers.containsKey( name );
+ if ( this.variableResolvers != null ) {
+ return this.variableResolvers.containsKey( name );
+ } else {
+ return false;
+ }
}
}
More information about the jboss-svn-commits
mailing list