You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ofbiz.apache.org by jo...@apache.org on 2006/08/07 08:11:09 UTC
svn commit: r429249 - in /incubator/ofbiz/trunk/framework:
base/src/base/org/ofbiz/base/util/ entityext/src/org/ofbiz/entityext/eca/
minilang/src/org/ofbiz/minilang/method/conditional/
minilang/src/org/ofbiz/minilang/method/ifops/ minilang/src/org/ofbi...
Author: jonesde
Date: Sun Aug 6 23:11:08 2006
New Revision: 429249
URL: http://svn.apache.org/viewvc?rev=429249&view=rev
Log:
Addressed some issues with i18n stuff and comparisons, type conversions; for numbers spaces are removed before parsing; for comparing with constants the en locale is assumed, ie the right value or value2 is mean to be a constant (we might have to do something with expanded strings here, but there string expansion should also generally expand numbers in the system or en locale; may still be an issue there, but the FlexibleStringExpander does a toString to this should be fine); this should fix Apahce Jira OFBIZ-133 and OFBIZ-136
Modified:
incubator/ofbiz/trunk/framework/base/src/base/org/ofbiz/base/util/ObjectType.java
incubator/ofbiz/trunk/framework/entityext/src/org/ofbiz/entityext/eca/EntityEcaCondition.java
incubator/ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/conditional/CompareCondition.java
incubator/ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/conditional/CompareFieldCondition.java
incubator/ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/ifops/IfCompare.java
incubator/ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/ifops/IfCompareField.java
incubator/ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/operation/BaseCompare.java
incubator/ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/operation/Compare.java
incubator/ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/operation/CompareField.java
incubator/ofbiz/trunk/framework/service/src/org/ofbiz/service/eca/ServiceEcaCondition.java
incubator/ofbiz/trunk/framework/service/src/org/ofbiz/service/eca/ServiceEcaRule.java
incubator/ofbiz/trunk/framework/widget/src/org/ofbiz/widget/menu/ModelMenuCondition.java
incubator/ofbiz/trunk/framework/widget/src/org/ofbiz/widget/screen/ModelScreenCondition.java
incubator/ofbiz/trunk/framework/widget/src/org/ofbiz/widget/tree/ModelTreeCondition.java
Modified: incubator/ofbiz/trunk/framework/base/src/base/org/ofbiz/base/util/ObjectType.java
URL: http://svn.apache.org/viewvc/incubator/ofbiz/trunk/framework/base/src/base/org/ofbiz/base/util/ObjectType.java?rev=429249&r1=429248&r2=429249&view=diff
==============================================================================
--- incubator/ofbiz/trunk/framework/base/src/base/org/ofbiz/base/util/ObjectType.java (original)
+++ incubator/ofbiz/trunk/framework/base/src/base/org/ofbiz/base/util/ObjectType.java Sun Aug 6 23:11:08 2006
@@ -467,13 +467,15 @@
if (str.length() == 0) {
return null;
}
-
+
if ("Boolean".equals(type) || "java.lang.Boolean".equals(type)) {
+ str = StringUtil.removeSpaces(str);
Boolean value = null;
- if (str.equalsIgnoreCase("TRUE"))
+ if (str.equalsIgnoreCase("TRUE")) {
value = new Boolean(true);
- else
+ } else {
value = new Boolean(false);
+ }
return value;
} else if ("Locale".equals(type) || "java.util.Locale".equals(type)) {
Locale loc = UtilMisc.parseLocale(str);
@@ -483,6 +485,7 @@
throw new GeneralException("Could not convert " + str + " to " + type + ": ");
}
} else if ("BigDecimal".equals(type) || "java.math.BigDecimal".equals(type)) {
+ str = StringUtil.removeSpaces(str);
try {
NumberFormat nf = null;
if (locale == null) {
@@ -496,6 +499,7 @@
throw new GeneralException("Could not convert " + str + " to " + type + ": ", e);
}
} else if ("Double".equals(type) || "java.lang.Double".equals(type)) {
+ str = StringUtil.removeSpaces(str);
try {
NumberFormat nf = null;
if (locale == null) {
@@ -510,6 +514,7 @@
throw new GeneralException("Could not convert " + str + " to " + type + ": ", e);
}
} else if ("Float".equals(type) || "java.lang.Float".equals(type)) {
+ str = StringUtil.removeSpaces(str);
try {
NumberFormat nf = null;
if (locale == null) {
@@ -524,6 +529,7 @@
throw new GeneralException("Could not convert " + str + " to " + type + ": ", e);
}
} else if ("Long".equals(type) || "java.lang.Long".equals(type)) {
+ str = StringUtil.removeSpaces(str);
try {
NumberFormat nf = null;
if (locale == null) {
@@ -539,6 +545,7 @@
throw new GeneralException("Could not convert " + str + " to " + type + ": ", e);
}
} else if ("Integer".equals(type) || "java.lang.Integer".equals(type)) {
+ str = StringUtil.removeSpaces(str);
try {
NumberFormat nf = null;
if (locale == null) {
@@ -901,7 +908,7 @@
}
public static Boolean doRealCompare(Object value1, Object value2, String operator, String type, String format,
- List messages, Locale locale, ClassLoader loader) {
+ List messages, Locale locale, ClassLoader loader, boolean value2InlineConstant) {
boolean verboseOn = Debug.verboseOn();
if (verboseOn) Debug.logVerbose("Comparing value1: \"" + value1 + "\" " + operator + " value2:\"" + value2 + "\"", module);
@@ -932,8 +939,12 @@
Object convertedValue2 = null;
if (value2 != null) {
+ Locale value2Locale = locale;
+ if (value2InlineConstant) {
+ value2Locale = UtilMisc.parseLocale("en");
+ }
try {
- convertedValue2 = ObjectType.simpleTypeConvert(value2, type, format, locale);
+ convertedValue2 = ObjectType.simpleTypeConvert(value2, type, format, value2Locale);
} catch (GeneralException e) {
Debug.logError(e, module);
messages.add("Could not convert value2 for comparison: " + e.getMessage());
Modified: incubator/ofbiz/trunk/framework/entityext/src/org/ofbiz/entityext/eca/EntityEcaCondition.java
URL: http://svn.apache.org/viewvc/incubator/ofbiz/trunk/framework/entityext/src/org/ofbiz/entityext/eca/EntityEcaCondition.java?rev=429249&r1=429248&r2=429249&view=diff
==============================================================================
--- incubator/ofbiz/trunk/framework/entityext/src/org/ofbiz/entityext/eca/EntityEcaCondition.java (original)
+++ incubator/ofbiz/trunk/framework/entityext/src/org/ofbiz/entityext/eca/EntityEcaCondition.java Sun Aug 6 23:11:08 2006
@@ -87,7 +87,7 @@
// evaluate the condition & invoke the action(s)
List messages = new LinkedList();
- Boolean cond = ObjectType.doRealCompare(lhsValue, rhsValue, operator, compareType, format, messages, null, dctx.getClassLoader());
+ Boolean cond = ObjectType.doRealCompare(lhsValue, rhsValue, operator, compareType, format, messages, null, dctx.getClassLoader(), constant);
// if any messages were returned send them out
if (messages.size() > 0) {
Modified: incubator/ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/conditional/CompareCondition.java
URL: http://svn.apache.org/viewvc/incubator/ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/conditional/CompareCondition.java?rev=429249&r1=429248&r2=429249&view=diff
==============================================================================
--- incubator/ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/conditional/CompareCondition.java (original)
+++ incubator/ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/conditional/CompareCondition.java Sun Aug 6 23:11:08 2006
@@ -65,7 +65,7 @@
Object fieldVal = getFieldVal(methodContext);
List messages = new LinkedList();
- Boolean resultBool = BaseCompare.doRealCompare(fieldVal, value, operator, type, format, messages, null, methodContext.getLoader());
+ Boolean resultBool = BaseCompare.doRealCompare(fieldVal, value, operator, type, format, messages, null, methodContext.getLoader(), true);
if (messages.size() > 0) {
messages.add(0, "Error with comparison in if-compare between field [" + mapAcsr.toString() + "." + fieldAcsr.toString() + "] with value [" + fieldVal + "] and value [" + value + "] with operator [" + operator + "] and type [" + type + "]: ");
if (methodContext.getMethodType() == MethodContext.EVENT) {
Modified: incubator/ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/conditional/CompareFieldCondition.java
URL: http://svn.apache.org/viewvc/incubator/ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/conditional/CompareFieldCondition.java?rev=429249&r1=429248&r2=429249&view=diff
==============================================================================
--- incubator/ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/conditional/CompareFieldCondition.java (original)
+++ incubator/ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/conditional/CompareFieldCondition.java Sun Aug 6 23:11:08 2006
@@ -72,7 +72,7 @@
Object fieldVal2 = getFieldVal2(methodContext);
List messages = new LinkedList();
- Boolean resultBool = BaseCompare.doRealCompare(fieldVal1, fieldVal2, operator, type, format, messages, null, methodContext.getLoader());
+ Boolean resultBool = BaseCompare.doRealCompare(fieldVal1, fieldVal2, operator, type, format, messages, null, methodContext.getLoader(), false);
if (messages.size() > 0) {
messages.add(0, "Error with comparison in if-compare-field between fields [" + mapAcsr.toString() + "." + fieldAcsr.toString() + "] with value [" + fieldVal1 + "] and [" + toMapAcsr.toString() + "." + toFieldAcsr.toString() + "] with value [" + fieldVal2 + "] with operator [" + operator + "] and type [" + type + "]: ");
Modified: incubator/ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/ifops/IfCompare.java
URL: http://svn.apache.org/viewvc/incubator/ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/ifops/IfCompare.java?rev=429249&r1=429248&r2=429249&view=diff
==============================================================================
--- incubator/ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/ifops/IfCompare.java (original)
+++ incubator/ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/ifops/IfCompare.java Sun Aug 6 23:11:08 2006
@@ -17,6 +17,8 @@
import java.util.*;
+import javolution.util.FastList;
+
import org.w3c.dom.*;
import org.ofbiz.base.util.*;
import org.ofbiz.minilang.*;
@@ -91,8 +93,8 @@
fieldVal = "";
}
- List messages = new LinkedList();
- Boolean resultBool = BaseCompare.doRealCompare(fieldVal, value, operator, type, format, messages, null, methodContext.getLoader());
+ List messages = FastList.newInstance();
+ Boolean resultBool = BaseCompare.doRealCompare(fieldVal, value, operator, type, format, messages, null, methodContext.getLoader(), true);
if (messages.size() > 0) {
messages.add(0, "Error with comparison in if-compare between field [" + mapAcsr.toString() + "." + fieldAcsr.toString() + "] with value [" + fieldVal + "] and value [" + value + "] with operator [" + operator + "] and type [" + type + "]: ");
if (methodContext.getMethodType() == MethodContext.EVENT) {
Modified: incubator/ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/ifops/IfCompareField.java
URL: http://svn.apache.org/viewvc/incubator/ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/ifops/IfCompareField.java?rev=429249&r1=429248&r2=429249&view=diff
==============================================================================
--- incubator/ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/ifops/IfCompareField.java (original)
+++ incubator/ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/ifops/IfCompareField.java Sun Aug 6 23:11:08 2006
@@ -108,7 +108,7 @@
}
List messages = new LinkedList();
- Boolean resultBool = BaseCompare.doRealCompare(fieldVal1, fieldVal2, operator, type, format, messages, null, methodContext.getLoader());
+ Boolean resultBool = BaseCompare.doRealCompare(fieldVal1, fieldVal2, operator, type, format, messages, null, methodContext.getLoader(), false);
if (messages.size() > 0) {
messages.add(0, "Error with comparison in if-compare-field between fields [" + mapAcsr.toString() + "." + fieldAcsr.toString() + "] with value [" + fieldVal1 + "] and [" + toMapAcsr.toString() + "." + toFieldAcsr.toString() + "] with value [" + fieldVal2 + "] with operator [" + operator + "] and type [" + type + "]: ");
Modified: incubator/ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/operation/BaseCompare.java
URL: http://svn.apache.org/viewvc/incubator/ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/operation/BaseCompare.java?rev=429249&r1=429248&r2=429249&view=diff
==============================================================================
--- incubator/ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/operation/BaseCompare.java (original)
+++ incubator/ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/operation/BaseCompare.java Sun Aug 6 23:11:08 2006
@@ -51,8 +51,8 @@
*/
}
- public void doCompare(Object value1, Object value2, List messages, Locale locale, ClassLoader loader) {
- Boolean success = BaseCompare.doRealCompare(value1, value2, this.operator, this.type, this.format, messages, locale, loader);
+ public void doCompare(Object value1, Object value2, List messages, Locale locale, ClassLoader loader, boolean value2InlineConstant) {
+ Boolean success = BaseCompare.doRealCompare(value1, value2, this.operator, this.type, this.format, messages, locale, loader, value2InlineConstant);
if (success != null && success.booleanValue() == false) {
addMessage(messages, loader, locale);
@@ -62,7 +62,7 @@
public void exec(Map inMap, Map results, List messages, Locale locale, ClassLoader loader) {}
public static Boolean doRealCompare(Object value1, Object value2, String operator, String type, String format,
- List messages, Locale locale, ClassLoader loader) {
- return ObjectType.doRealCompare(value1, value2, operator, type, format, messages, locale, loader);
+ List messages, Locale locale, ClassLoader loader, boolean value2InlineConstant) {
+ return ObjectType.doRealCompare(value1, value2, operator, type, format, messages, locale, loader, value2InlineConstant);
}
}
Modified: incubator/ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/operation/Compare.java
URL: http://svn.apache.org/viewvc/incubator/ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/operation/Compare.java?rev=429249&r1=429248&r2=429249&view=diff
==============================================================================
--- incubator/ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/operation/Compare.java (original)
+++ incubator/ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/operation/Compare.java Sun Aug 6 23:11:08 2006
@@ -37,6 +37,6 @@
public void exec(Map inMap, Map results, List messages, Locale locale, ClassLoader loader) {
Object fieldValue = inMap.get(fieldName);
- doCompare(fieldValue, value, messages, locale, loader);
+ doCompare(fieldValue, value, messages, locale, loader, true);
}
}
Modified: incubator/ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/operation/CompareField.java
URL: http://svn.apache.org/viewvc/incubator/ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/operation/CompareField.java?rev=429249&r1=429248&r2=429249&view=diff
==============================================================================
--- incubator/ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/operation/CompareField.java (original)
+++ incubator/ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/operation/CompareField.java Sun Aug 6 23:11:08 2006
@@ -38,6 +38,6 @@
Object compareValue = inMap.get(compareName);
Object fieldValue = inMap.get(fieldName);
- doCompare(fieldValue, compareValue, messages, locale, loader);
+ doCompare(fieldValue, compareValue, messages, locale, loader, false);
}
}
Modified: incubator/ofbiz/trunk/framework/service/src/org/ofbiz/service/eca/ServiceEcaCondition.java
URL: http://svn.apache.org/viewvc/incubator/ofbiz/trunk/framework/service/src/org/ofbiz/service/eca/ServiceEcaCondition.java?rev=429249&r1=429248&r2=429249&view=diff
==============================================================================
--- incubator/ofbiz/trunk/framework/service/src/org/ofbiz/service/eca/ServiceEcaCondition.java (original)
+++ incubator/ofbiz/trunk/framework/service/src/org/ofbiz/service/eca/ServiceEcaCondition.java Sun Aug 6 23:11:08 2006
@@ -154,7 +154,7 @@
// evaluate the condition & invoke the action(s)
List messages = new LinkedList();
- Boolean cond = ObjectType.doRealCompare(lhsValue, rhsValue, operator, compareType, format, messages, null, dctx.getClassLoader());
+ Boolean cond = ObjectType.doRealCompare(lhsValue, rhsValue, operator, compareType, format, messages, null, dctx.getClassLoader(), isConstant);
// if any messages were returned send them out
if (messages.size() > 0) {
Modified: incubator/ofbiz/trunk/framework/service/src/org/ofbiz/service/eca/ServiceEcaRule.java
URL: http://svn.apache.org/viewvc/incubator/ofbiz/trunk/framework/service/src/org/ofbiz/service/eca/ServiceEcaRule.java?rev=429249&r1=429248&r2=429249&view=diff
==============================================================================
--- incubator/ofbiz/trunk/framework/service/src/org/ofbiz/service/eca/ServiceEcaRule.java (original)
+++ incubator/ofbiz/trunk/framework/service/src/org/ofbiz/service/eca/ServiceEcaRule.java Sun Aug 6 23:11:08 2006
@@ -56,21 +56,18 @@
List condList = UtilXml.childElementList(eca, "condition");
Iterator ci = condList.iterator();
-
while (ci.hasNext()) {
conditions.add(new ServiceEcaCondition((Element) ci.next(), true, false));
}
List condFList = UtilXml.childElementList(eca, "condition-field");
Iterator cfi = condFList.iterator();
-
while (cfi.hasNext()) {
conditions.add(new ServiceEcaCondition((Element) cfi.next(), false, false));
}
List condSList = UtilXml.childElementList(eca, "condition-service");
Iterator sfi = condSList.iterator();
-
while (sfi.hasNext()) {
conditions.add(new ServiceEcaCondition((Element) sfi.next(), false, true));
}
@@ -79,7 +76,6 @@
List actList = UtilXml.childElementList(eca, "action");
Iterator ai = actList.iterator();
-
while (ai.hasNext()) {
Element actionElement = (Element) ai.next();
actions.add(new ServiceEcaAction(actionElement, eventName));
Modified: incubator/ofbiz/trunk/framework/widget/src/org/ofbiz/widget/menu/ModelMenuCondition.java
URL: http://svn.apache.org/viewvc/incubator/ofbiz/trunk/framework/widget/src/org/ofbiz/widget/menu/ModelMenuCondition.java?rev=429249&r1=429248&r2=429249&view=diff
==============================================================================
--- incubator/ofbiz/trunk/framework/widget/src/org/ofbiz/widget/menu/ModelMenuCondition.java (original)
+++ incubator/ofbiz/trunk/framework/widget/src/org/ofbiz/widget/menu/ModelMenuCondition.java Sun Aug 6 23:11:08 2006
@@ -21,6 +21,8 @@
import java.util.List;
import java.util.Map;
+import javolution.util.FastList;
+
import org.apache.oro.text.regex.MalformedPatternException;
import org.apache.oro.text.regex.Pattern;
import org.apache.oro.text.regex.PatternCompiler;
@@ -95,7 +97,7 @@
}
public static List readSubConditions(ModelMenuItem modelMenuItem, Element conditionElement) {
- List condList = new LinkedList();
+ List condList = FastList.newInstance();
List subElementList = UtilXml.childElementList(conditionElement);
Iterator subElementIter = subElementList.iterator();
while (subElementIter.hasNext()) {
@@ -342,8 +344,8 @@
fieldVal = "";
}
- List messages = new LinkedList();
- Boolean resultBool = BaseCompare.doRealCompare(fieldVal, value, operator, type, format, messages, null, null);
+ List messages = FastList.newInstance();
+ Boolean resultBool = BaseCompare.doRealCompare(fieldVal, value, operator, type, format, messages, null, null, true);
if (messages.size() > 0) {
messages.add(0, "Error with comparison in if-compare between field [" + fieldAcsr.toString() + "] with value [" + fieldVal + "] and value [" + value + "] with operator [" + operator + "] and type [" + type + "]: ");
@@ -391,8 +393,8 @@
fieldVal = "";
}
- List messages = new LinkedList();
- Boolean resultBool = BaseCompare.doRealCompare(fieldVal, toFieldVal, operator, type, format, messages, null, null);
+ List messages = FastList.newInstance();
+ Boolean resultBool = BaseCompare.doRealCompare(fieldVal, toFieldVal, operator, type, format, messages, null, null, false);
if (messages.size() > 0) {
messages.add(0, "Error with comparison in if-compare-field between field [" + fieldAcsr.toString() + "] with value [" + fieldVal + "] and to-field [" + toFieldVal.toString() + "] with value [" + toFieldVal + "] with operator [" + operator + "] and type [" + type + "]: ");
Modified: incubator/ofbiz/trunk/framework/widget/src/org/ofbiz/widget/screen/ModelScreenCondition.java
URL: http://svn.apache.org/viewvc/incubator/ofbiz/trunk/framework/widget/src/org/ofbiz/widget/screen/ModelScreenCondition.java?rev=429249&r1=429248&r2=429249&view=diff
==============================================================================
--- incubator/ofbiz/trunk/framework/widget/src/org/ofbiz/widget/screen/ModelScreenCondition.java (original)
+++ incubator/ofbiz/trunk/framework/widget/src/org/ofbiz/widget/screen/ModelScreenCondition.java Sun Aug 6 23:11:08 2006
@@ -22,6 +22,8 @@
import java.util.List;
import java.util.Map;
+import javolution.util.FastList;
+
import org.ofbiz.base.util.Debug;
import org.ofbiz.base.util.GeneralException;
import org.ofbiz.base.util.ObjectType;
@@ -77,7 +79,7 @@
}
public static List readSubConditions(ModelScreen modelScreen, Element conditionElement) {
- List condList = new LinkedList();
+ List condList = FastList.newInstance();
List subElementList = UtilXml.childElementList(conditionElement);
Iterator subElementIter = subElementList.iterator();
while (subElementIter.hasNext()) {
@@ -324,8 +326,8 @@
fieldVal = "";
}
- List messages = new LinkedList();
- Boolean resultBool = BaseCompare.doRealCompare(fieldVal, value, operator, type, format, messages, null, null);
+ List messages = FastList.newInstance();
+ Boolean resultBool = BaseCompare.doRealCompare(fieldVal, value, operator, type, format, messages, null, null, true);
if (messages.size() > 0) {
messages.add(0, "Error with comparison in if-compare between field [" + fieldAcsr.toString() + "] with value [" + fieldVal + "] and value [" + value + "] with operator [" + operator + "] and type [" + type + "]: ");
@@ -373,8 +375,8 @@
fieldVal = "";
}
- List messages = new LinkedList();
- Boolean resultBool = BaseCompare.doRealCompare(fieldVal, toFieldVal, operator, type, format, messages, null, null);
+ List messages = FastList.newInstance();
+ Boolean resultBool = BaseCompare.doRealCompare(fieldVal, toFieldVal, operator, type, format, messages, null, null, false);
if (messages.size() > 0) {
messages.add(0, "Error with comparison in if-compare-field between field [" + fieldAcsr.toString() + "] with value [" + fieldVal + "] and to-field [" + toFieldAcsr.toString() + "] with value [" + toFieldVal + "] with operator [" + operator + "] and type [" + type + "]: ");
Modified: incubator/ofbiz/trunk/framework/widget/src/org/ofbiz/widget/tree/ModelTreeCondition.java
URL: http://svn.apache.org/viewvc/incubator/ofbiz/trunk/framework/widget/src/org/ofbiz/widget/tree/ModelTreeCondition.java?rev=429249&r1=429248&r2=429249&view=diff
==============================================================================
--- incubator/ofbiz/trunk/framework/widget/src/org/ofbiz/widget/tree/ModelTreeCondition.java (original)
+++ incubator/ofbiz/trunk/framework/widget/src/org/ofbiz/widget/tree/ModelTreeCondition.java Sun Aug 6 23:11:08 2006
@@ -21,6 +21,8 @@
import java.util.List;
import java.util.Map;
+import javolution.util.FastList;
+
import org.ofbiz.base.util.Debug;
import org.ofbiz.base.util.GeneralException;
import org.ofbiz.base.util.ObjectType;
@@ -76,7 +78,7 @@
}
public static List readSubConditions(ModelTree modelTree, Element conditionElement) {
- List condList = new LinkedList();
+ List condList = FastList.newInstance();
List subElementList = UtilXml.childElementList(conditionElement);
Iterator subElementIter = subElementList.iterator();
while (subElementIter.hasNext()) {
@@ -323,8 +325,8 @@
fieldVal = "";
}
- List messages = new LinkedList();
- Boolean resultBool = BaseCompare.doRealCompare(fieldVal, value, operator, type, format, messages, null, null);
+ List messages = FastList.newInstance();
+ Boolean resultBool = BaseCompare.doRealCompare(fieldVal, value, operator, type, format, messages, null, null, true);
if (messages.size() > 0) {
messages.add(0, "Error with comparison in if-compare between field [" + fieldAcsr.toString() + "] with value [" + fieldVal + "] and value [" + value + "] with operator [" + operator + "] and type [" + type + "]: ");
@@ -372,8 +374,8 @@
fieldVal = "";
}
- List messages = new LinkedList();
- Boolean resultBool = BaseCompare.doRealCompare(fieldVal, toFieldVal, operator, type, format, messages, null, null);
+ List messages = FastList.newInstance();
+ Boolean resultBool = BaseCompare.doRealCompare(fieldVal, toFieldVal, operator, type, format, messages, null, null, false);
if (messages.size() > 0) {
messages.add(0, "Error with comparison in if-compare-field between field [" + fieldAcsr.toString() + "] with value [" + fieldVal + "] and to-field [" + toFieldVal.toString() + "] with value [" + toFieldVal + "] with operator [" + operator + "] and type [" + type + "]: ");