You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ofbiz.apache.org by ad...@apache.org on 2012/04/29 10:11:54 UTC
svn commit: r1331875 - in
/ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang: ./
method/conditional/ method/envops/ method/ifops/
Author: adrianc
Date: Sun Apr 29 08:11:53 2012
New Revision: 1331875
URL: http://svn.apache.org/viewvc?rev=1331875&view=rev
Log:
Refactored how Mini-language element model lists are constructed and stored - to improve thread-safety and memory use.
Modified:
ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/SimpleMethod.java
ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/conditional/ElseIf.java
ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/conditional/MasterIf.java
ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/conditional/While.java
ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/envops/Iterate.java
ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/envops/IterateMap.java
ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/envops/Loop.java
ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/ifops/IfCompare.java
ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/ifops/IfCompareField.java
ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/ifops/IfEmpty.java
ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/ifops/IfHasPermission.java
ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/ifops/IfInstanceOf.java
ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/ifops/IfNotEmpty.java
ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/ifops/IfRegexp.java
ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/ifops/IfValidateMethod.java
Modified: ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/SimpleMethod.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/SimpleMethod.java?rev=1331875&r1=1331874&r2=1331875&view=diff
==============================================================================
--- ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/SimpleMethod.java (original)
+++ ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/SimpleMethod.java Sun Apr 29 08:11:53 2012
@@ -21,6 +21,7 @@ package org.ofbiz.minilang;
import java.lang.reflect.Method;
import java.net.MalformedURLException;
import java.net.URL;
+import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.Iterator;
@@ -395,8 +396,9 @@ public class SimpleMethod {
return simpleMethods;
}
- public static void readOperations(Element simpleMethodElement, List<MethodOperation> methodOperations, SimpleMethod simpleMethod) throws MiniLangException {
+ public static List<MethodOperation> readOperations(Element simpleMethodElement, SimpleMethod simpleMethod) throws MiniLangException {
List<? extends Element> operationElements = UtilXml.childElementList(simpleMethodElement);
+ List<MethodOperation> methodOperations = new ArrayList<MethodOperation>(operationElements.size());
if (UtilValidate.isNotEmpty(operationElements)) {
for (Element curOperElem : operationElements) {
String nodeName = curOperElem.getNodeName();
@@ -407,16 +409,19 @@ public class SimpleMethod {
} else if ("else".equals(nodeName)) {
// don't add anything, but don't complain either, this one is handled in the individual operations
} else {
- Debug.logWarning("Operation element \"" + nodeName + "\" no recognized", module);
+ MiniLangValidate.handleError("Invalid element found", simpleMethod, curOperElem);
}
- if (methodOp == null)
+ if (methodOp == null) {
continue;
+ }
methodOperations.add(methodOp);
DeprecatedOperation depOp = methodOp.getClass().getAnnotation(DeprecatedOperation.class);
- if (depOp != null)
- Debug.logInfo("The " + nodeName + " operation has been deprecated in favor of the " + depOp.value() + " operation; found use of this in [" + simpleMethod.getShortDescription() + "]: " + methodOp.rawString(), module);
+ if (depOp != null) {
+ MiniLangValidate.handleError("The " + nodeName + " operation has been deprecated in favor of the " + depOp.value() + " operation", simpleMethod, curOperElem);
+ }
}
}
+ return methodOperations;
}
public static String runSimpleEvent(String xmlResource, String methodName, HttpServletRequest request, HttpServletResponse response) throws MiniLangException {
@@ -496,7 +501,7 @@ public class SimpleMethod {
protected String localeName;
protected boolean loginRequired = true;
protected String methodName;
- protected List<MethodOperation> methodOperations = FastList.newInstance();
+ protected List<MethodOperation> methodOperations;
protected String parameterMapName;
protected Map<String, SimpleMethod> parentSimpleMethodsMap;
protected String securityName;
@@ -539,7 +544,7 @@ public class SimpleMethod {
securityName = UtilXml.elementAttribute(simpleMethodElement, "security-name", "security");
dispatcherName = UtilXml.elementAttribute(simpleMethodElement, "dispatcher-name", "dispatcher");
userLoginName = UtilXml.elementAttribute(simpleMethodElement, "user-login-name", "userLogin");
- readOperations(simpleMethodElement, this.methodOperations, this);
+ this.methodOperations = Collections.unmodifiableList(readOperations(simpleMethodElement, this));
}
/** Execute the Simple Method operations */
Modified: ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/conditional/ElseIf.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/conditional/ElseIf.java?rev=1331875&r1=1331874&r2=1331875&view=diff
==============================================================================
--- ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/conditional/ElseIf.java (original)
+++ ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/conditional/ElseIf.java Sun Apr 29 08:11:53 2012
@@ -18,10 +18,9 @@
*******************************************************************************/
package org.ofbiz.minilang.method.conditional;
+import java.util.Collections;
import java.util.List;
-import javolution.util.FastList;
-
import org.ofbiz.base.util.UtilXml;
import org.ofbiz.minilang.MiniLangException;
import org.ofbiz.minilang.SimpleMethod;
@@ -35,15 +34,14 @@ import org.w3c.dom.Element;
public class ElseIf {
protected Conditional condition;
- protected List<MethodOperation> thenSubOps = FastList.newInstance();
+ protected List<MethodOperation> thenSubOps;
public ElseIf(Element element, SimpleMethod simpleMethod) throws MiniLangException {
Element conditionElement = UtilXml.firstChildElement(element, "condition");
Element conditionChildElement = UtilXml.firstChildElement(conditionElement);
this.condition = ConditionalFactory.makeConditional(conditionChildElement, simpleMethod);
-
Element thenElement = UtilXml.firstChildElement(element, "then");
- SimpleMethod.readOperations(thenElement, thenSubOps, simpleMethod);
+ this.thenSubOps = Collections.unmodifiableList(SimpleMethod.readOperations(thenElement, simpleMethod));
}
public boolean checkCondition(MethodContext methodContext) {
Modified: ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/conditional/MasterIf.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/conditional/MasterIf.java?rev=1331875&r1=1331874&r2=1331875&view=diff
==============================================================================
--- ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/conditional/MasterIf.java (original)
+++ ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/conditional/MasterIf.java Sun Apr 29 08:11:53 2012
@@ -18,6 +18,7 @@
*******************************************************************************/
package org.ofbiz.minilang.method.conditional;
+import java.util.Collections;
import java.util.List;
import javolution.util.FastList;
@@ -38,7 +39,7 @@ public class MasterIf extends MethodOper
Conditional condition;
List<ElseIf> elseIfs = null;
List<MethodOperation> elseSubOps = null;
- List<MethodOperation> thenSubOps = FastList.newInstance();
+ List<MethodOperation> thenSubOps;
public MasterIf(Element element, SimpleMethod simpleMethod) throws MiniLangException {
super(element, simpleMethod);
@@ -46,7 +47,7 @@ public class MasterIf extends MethodOper
Element conditionChildElement = UtilXml.firstChildElement(conditionElement);
this.condition = ConditionalFactory.makeConditional(conditionChildElement, simpleMethod);
Element thenElement = UtilXml.firstChildElement(element, "then");
- SimpleMethod.readOperations(thenElement, thenSubOps, simpleMethod);
+ this.thenSubOps = Collections.unmodifiableList(SimpleMethod.readOperations(thenElement, simpleMethod));
List<? extends Element> elseIfElements = UtilXml.childElementList(element, "else-if");
if (UtilValidate.isNotEmpty(elseIfElements)) {
elseIfs = FastList.newInstance();
@@ -56,8 +57,7 @@ public class MasterIf extends MethodOper
}
Element elseElement = UtilXml.firstChildElement(element, "else");
if (elseElement != null) {
- elseSubOps = FastList.newInstance();
- SimpleMethod.readOperations(elseElement, elseSubOps, simpleMethod);
+ this.elseSubOps = Collections.unmodifiableList(SimpleMethod.readOperations(elseElement, simpleMethod));
}
}
Modified: ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/conditional/While.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/conditional/While.java?rev=1331875&r1=1331874&r2=1331875&view=diff
==============================================================================
--- ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/conditional/While.java (original)
+++ ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/conditional/While.java Sun Apr 29 08:11:53 2012
@@ -18,10 +18,9 @@
*******************************************************************************/
package org.ofbiz.minilang.method.conditional;
+import java.util.Collections;
import java.util.List;
-import javolution.util.FastList;
-
import org.ofbiz.base.util.UtilXml;
import org.ofbiz.minilang.MiniLangException;
import org.ofbiz.minilang.SimpleMethod;
@@ -37,7 +36,7 @@ import org.w3c.dom.Element;
public class While extends MethodOperation {
Conditional condition;
- List<MethodOperation> thenSubOps = FastList.newInstance();
+ List<MethodOperation> thenSubOps;
public While(Element element, SimpleMethod simpleMethod) throws MiniLangException {
super(element, simpleMethod);
@@ -45,7 +44,7 @@ public class While extends MethodOperati
Element conditionChildElement = UtilXml.firstChildElement(conditionElement);
this.condition = ConditionalFactory.makeConditional(conditionChildElement, simpleMethod);
Element thenElement = UtilXml.firstChildElement(element, "then");
- SimpleMethod.readOperations(thenElement, thenSubOps, simpleMethod);
+ this.thenSubOps = Collections.unmodifiableList(SimpleMethod.readOperations(thenElement, simpleMethod));
}
@Override
Modified: ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/envops/Iterate.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/envops/Iterate.java?rev=1331875&r1=1331874&r2=1331875&view=diff
==============================================================================
--- ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/envops/Iterate.java (original)
+++ ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/envops/Iterate.java Sun Apr 29 08:11:53 2012
@@ -19,11 +19,10 @@
package org.ofbiz.minilang.method.envops;
import java.util.Collection;
+import java.util.Collections;
import java.util.Iterator;
import java.util.List;
-import javolution.util.FastList;
-
import org.ofbiz.base.util.Debug;
import org.ofbiz.base.util.UtilGenerics;
import org.ofbiz.entity.GenericEntityException;
@@ -47,13 +46,13 @@ public class Iterate extends MethodOpera
protected ContextAccessor<Object> entryAcsr;
protected ContextAccessor<Object> listAcsr;
- protected List<MethodOperation> subOps = FastList.newInstance();
+ protected List<MethodOperation> subOps;
public Iterate(Element element, SimpleMethod simpleMethod) throws MiniLangException {
super(element, simpleMethod);
this.entryAcsr = new ContextAccessor<Object>(element.getAttribute("entry"), element.getAttribute("entry-name"));
this.listAcsr = new ContextAccessor<Object>(element.getAttribute("list"), element.getAttribute("list-name"));
- SimpleMethod.readOperations(element, subOps, simpleMethod);
+ this.subOps = Collections.unmodifiableList(SimpleMethod.readOperations(element, simpleMethod));
}
@Override
Modified: ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/envops/IterateMap.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/envops/IterateMap.java?rev=1331875&r1=1331874&r2=1331875&view=diff
==============================================================================
--- ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/envops/IterateMap.java (original)
+++ ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/envops/IterateMap.java Sun Apr 29 08:11:53 2012
@@ -18,11 +18,10 @@
*******************************************************************************/
package org.ofbiz.minilang.method.envops;
+import java.util.Collections;
import java.util.List;
import java.util.Map;
-import javolution.util.FastList;
-
import org.ofbiz.base.util.Debug;
import org.ofbiz.minilang.MiniLangException;
import org.ofbiz.minilang.SimpleMethod;
@@ -42,7 +41,7 @@ public class IterateMap extends MethodOp
ContextAccessor<Object> keyAcsr;
ContextAccessor<Map<? extends Object, ? extends Object>> mapAcsr;
- List<MethodOperation> subOps = FastList.newInstance();
+ List<MethodOperation> subOps;
ContextAccessor<Object> valueAcsr;
public IterateMap(Element element, SimpleMethod simpleMethod) throws MiniLangException {
@@ -50,7 +49,7 @@ public class IterateMap extends MethodOp
this.keyAcsr = new ContextAccessor<Object>(element.getAttribute("key"), element.getAttribute("key-name"));
this.valueAcsr = new ContextAccessor<Object>(element.getAttribute("value"), element.getAttribute("value-name"));
this.mapAcsr = new ContextAccessor<Map<? extends Object, ? extends Object>>(element.getAttribute("map"), element.getAttribute("map-name"));
- SimpleMethod.readOperations(element, subOps, simpleMethod);
+ this.subOps = Collections.unmodifiableList(SimpleMethod.readOperations(element, simpleMethod));
}
@Override
Modified: ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/envops/Loop.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/envops/Loop.java?rev=1331875&r1=1331874&r2=1331875&view=diff
==============================================================================
--- ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/envops/Loop.java (original)
+++ ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/envops/Loop.java Sun Apr 29 08:11:53 2012
@@ -18,10 +18,9 @@
*******************************************************************************/
package org.ofbiz.minilang.method.envops;
+import java.util.Collections;
import java.util.List;
-import javolution.util.FastList;
-
import org.ofbiz.base.util.Debug;
import org.ofbiz.minilang.MiniLangException;
import org.ofbiz.minilang.SimpleMethod;
@@ -41,13 +40,13 @@ public class Loop extends MethodOperatio
protected String countStr;
protected ContextAccessor<Integer> fieldAcsr;
- protected List<MethodOperation> subOps = FastList.newInstance();
+ protected List<MethodOperation> subOps;
public Loop(Element element, SimpleMethod simpleMethod) throws MiniLangException {
super(element, simpleMethod);
this.fieldAcsr = new ContextAccessor<Integer>(element.getAttribute("field"));
this.countStr = element.getAttribute("count");
- SimpleMethod.readOperations(element, subOps, simpleMethod);
+ this.subOps = Collections.unmodifiableList(SimpleMethod.readOperations(element, simpleMethod));
}
@Override
Modified: ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/ifops/IfCompare.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/ifops/IfCompare.java?rev=1331875&r1=1331874&r2=1331875&view=diff
==============================================================================
--- ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/ifops/IfCompare.java (original)
+++ ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/ifops/IfCompare.java Sun Apr 29 08:11:53 2012
@@ -18,6 +18,7 @@
*******************************************************************************/
package org.ofbiz.minilang.method.ifops;
+import java.util.Collections;
import java.util.List;
import java.util.Map;
@@ -45,7 +46,7 @@ public class IfCompare extends MethodOpe
protected String format;
protected ContextAccessor<Map<String, ? extends Object>> mapAcsr;
protected String operator;
- protected List<MethodOperation> subOps = FastList.newInstance();
+ protected List<MethodOperation> subOps;
protected String type;
protected String value;
@@ -62,11 +63,10 @@ public class IfCompare extends MethodOpe
this.operator = element.getAttribute("operator");
this.type = element.getAttribute("type");
this.format = element.getAttribute("format");
- SimpleMethod.readOperations(element, subOps, simpleMethod);
+ this.subOps = Collections.unmodifiableList(SimpleMethod.readOperations(element, simpleMethod));
Element elseElement = UtilXml.firstChildElement(element, "else");
if (elseElement != null) {
- elseSubOps = FastList.newInstance();
- SimpleMethod.readOperations(elseElement, elseSubOps, simpleMethod);
+ this.elseSubOps = Collections.unmodifiableList(SimpleMethod.readOperations(elseElement, simpleMethod));
}
}
Modified: ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/ifops/IfCompareField.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/ifops/IfCompareField.java?rev=1331875&r1=1331874&r2=1331875&view=diff
==============================================================================
--- ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/ifops/IfCompareField.java (original)
+++ ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/ifops/IfCompareField.java Sun Apr 29 08:11:53 2012
@@ -18,6 +18,7 @@
*******************************************************************************/
package org.ofbiz.minilang.method.ifops;
+import java.util.Collections;
import java.util.List;
import java.util.Map;
@@ -45,7 +46,7 @@ public class IfCompareField extends Meth
protected String format;
protected ContextAccessor<Map<String, ? extends Object>> mapAcsr;
protected String operator;
- protected List<MethodOperation> subOps = FastList.newInstance();
+ protected List<MethodOperation> subOps;
protected ContextAccessor<Object> toFieldAcsr;
protected ContextAccessor<Map<String, ? extends Object>> toMapAcsr;
protected String type;
@@ -73,11 +74,10 @@ public class IfCompareField extends Meth
this.operator = element.getAttribute("operator");
this.type = element.getAttribute("type");
this.format = element.getAttribute("format");
- SimpleMethod.readOperations(element, subOps, simpleMethod);
+ this.subOps = Collections.unmodifiableList(SimpleMethod.readOperations(element, simpleMethod));
Element elseElement = UtilXml.firstChildElement(element, "else");
if (elseElement != null) {
- elseSubOps = FastList.newInstance();
- SimpleMethod.readOperations(elseElement, elseSubOps, simpleMethod);
+ this.elseSubOps = Collections.unmodifiableList(SimpleMethod.readOperations(elseElement, simpleMethod));
}
}
Modified: ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/ifops/IfEmpty.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/ifops/IfEmpty.java?rev=1331875&r1=1331874&r2=1331875&view=diff
==============================================================================
--- ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/ifops/IfEmpty.java (original)
+++ ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/ifops/IfEmpty.java Sun Apr 29 08:11:53 2012
@@ -18,6 +18,7 @@
*******************************************************************************/
package org.ofbiz.minilang.method.ifops;
+import java.util.Collections;
import java.util.List;
import java.util.Map;
@@ -43,7 +44,7 @@ public class IfEmpty extends MethodOpera
List<MethodOperation> elseSubOps = null;
ContextAccessor<Object> fieldAcsr;
ContextAccessor<Map<String, ? extends Object>> mapAcsr;
- List<MethodOperation> subOps = FastList.newInstance();
+ List<MethodOperation> subOps;
public IfEmpty(Element element, SimpleMethod simpleMethod) throws MiniLangException {
super(element, simpleMethod);
@@ -54,11 +55,10 @@ public class IfEmpty extends MethodOpera
// NOTE: this is still supported, but is deprecated
this.fieldAcsr = new ContextAccessor<Object>(element.getAttribute("field-name"));
}
- SimpleMethod.readOperations(element, subOps, simpleMethod);
+ this.subOps = Collections.unmodifiableList(SimpleMethod.readOperations(element, simpleMethod));
Element elseElement = UtilXml.firstChildElement(element, "else");
if (elseElement != null) {
- elseSubOps = FastList.newInstance();
- SimpleMethod.readOperations(elseElement, elseSubOps, simpleMethod);
+ this.elseSubOps = Collections.unmodifiableList(SimpleMethod.readOperations(elseElement, simpleMethod));
}
}
Modified: ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/ifops/IfHasPermission.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/ifops/IfHasPermission.java?rev=1331875&r1=1331874&r2=1331875&view=diff
==============================================================================
--- ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/ifops/IfHasPermission.java (original)
+++ ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/ifops/IfHasPermission.java Sun Apr 29 08:11:53 2012
@@ -18,6 +18,7 @@
*******************************************************************************/
package org.ofbiz.minilang.method.ifops;
+import java.util.Collections;
import java.util.List;
import javolution.util.FastList;
@@ -42,17 +43,16 @@ public class IfHasPermission extends Met
protected FlexibleStringExpander actionExdr;
protected List<MethodOperation> elseSubOps = null;
protected FlexibleStringExpander permissionExdr;
- protected List<MethodOperation> subOps = FastList.newInstance();
+ protected List<MethodOperation> subOps;
public IfHasPermission(Element element, SimpleMethod simpleMethod) throws MiniLangException {
super(element, simpleMethod);
this.permissionExdr = FlexibleStringExpander.getInstance(element.getAttribute("permission"));
this.actionExdr = FlexibleStringExpander.getInstance(element.getAttribute("action"));
- SimpleMethod.readOperations(element, subOps, simpleMethod);
+ this.subOps = Collections.unmodifiableList(SimpleMethod.readOperations(element, simpleMethod));
Element elseElement = UtilXml.firstChildElement(element, "else");
if (elseElement != null) {
- elseSubOps = FastList.newInstance();
- SimpleMethod.readOperations(elseElement, elseSubOps, simpleMethod);
+ this.elseSubOps = Collections.unmodifiableList(SimpleMethod.readOperations(elseElement, simpleMethod));
}
}
Modified: ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/ifops/IfInstanceOf.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/ifops/IfInstanceOf.java?rev=1331875&r1=1331874&r2=1331875&view=diff
==============================================================================
--- ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/ifops/IfInstanceOf.java (original)
+++ ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/ifops/IfInstanceOf.java Sun Apr 29 08:11:53 2012
@@ -18,6 +18,7 @@
*******************************************************************************/
package org.ofbiz.minilang.method.ifops;
+import java.util.Collections;
import java.util.List;
import java.util.Map;
@@ -41,7 +42,7 @@ public class IfInstanceOf extends Method
protected List<MethodOperation> elseSubOps = null;
protected ContextAccessor<Object> fieldAcsr = null;
protected ContextAccessor<Map<String, ? extends Object>> mapAcsr = null;
- protected List<MethodOperation> subOps = FastList.newInstance();
+ protected List<MethodOperation> subOps;
public IfInstanceOf(Element element, SimpleMethod simpleMethod) throws MiniLangException {
super(element, simpleMethod);
@@ -49,11 +50,10 @@ public class IfInstanceOf extends Method
this.fieldAcsr = new ContextAccessor<Object>(element.getAttribute("field"), element.getAttribute("field-name"));
this.mapAcsr = new ContextAccessor<Map<String, ? extends Object>>(element.getAttribute("map-name"));
this.className = element.getAttribute("class");
- SimpleMethod.readOperations(element, subOps, simpleMethod);
+ this.subOps = Collections.unmodifiableList(SimpleMethod.readOperations(element, simpleMethod));
Element elseElement = UtilXml.firstChildElement(element, "else");
if (elseElement != null) {
- elseSubOps = FastList.newInstance();
- SimpleMethod.readOperations(elseElement, elseSubOps, simpleMethod);
+ this.elseSubOps = Collections.unmodifiableList(SimpleMethod.readOperations(elseElement, simpleMethod));
}
}
Modified: ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/ifops/IfNotEmpty.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/ifops/IfNotEmpty.java?rev=1331875&r1=1331874&r2=1331875&view=diff
==============================================================================
--- ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/ifops/IfNotEmpty.java (original)
+++ ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/ifops/IfNotEmpty.java Sun Apr 29 08:11:53 2012
@@ -18,6 +18,7 @@
*******************************************************************************/
package org.ofbiz.minilang.method.ifops;
+import java.util.Collections;
import java.util.List;
import java.util.Map;
@@ -43,7 +44,7 @@ public class IfNotEmpty extends MethodOp
protected List<MethodOperation> elseSubOps = null;
protected ContextAccessor<Object> fieldAcsr;
protected ContextAccessor<Map<String, ? extends Object>> mapAcsr;
- protected List<MethodOperation> subOps = FastList.newInstance();
+ protected List<MethodOperation> subOps;
public IfNotEmpty(Element element, SimpleMethod simpleMethod) throws MiniLangException {
super(element, simpleMethod);
@@ -54,11 +55,10 @@ public class IfNotEmpty extends MethodOp
// NOTE: this is still supported, but is deprecated
this.fieldAcsr = new ContextAccessor<Object>(element.getAttribute("field-name"));
}
- SimpleMethod.readOperations(element, subOps, simpleMethod);
+ this.subOps = Collections.unmodifiableList(SimpleMethod.readOperations(element, simpleMethod));
Element elseElement = UtilXml.firstChildElement(element, "else");
if (elseElement != null) {
- elseSubOps = FastList.newInstance();
- SimpleMethod.readOperations(elseElement, elseSubOps, simpleMethod);
+ this.elseSubOps = Collections.unmodifiableList(SimpleMethod.readOperations(elseElement, simpleMethod));
}
}
Modified: ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/ifops/IfRegexp.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/ifops/IfRegexp.java?rev=1331875&r1=1331874&r2=1331875&view=diff
==============================================================================
--- ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/ifops/IfRegexp.java (original)
+++ ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/ifops/IfRegexp.java Sun Apr 29 08:11:53 2012
@@ -18,6 +18,7 @@
*******************************************************************************/
package org.ofbiz.minilang.method.ifops;
+import java.util.Collections;
import java.util.List;
import java.util.Map;
@@ -49,7 +50,7 @@ public class IfRegexp extends MethodOper
FlexibleStringExpander exprExdr;
ContextAccessor<Object> fieldAcsr;
ContextAccessor<Map<String, ? extends Object>> mapAcsr;
- List<MethodOperation> subOps = FastList.newInstance();
+ List<MethodOperation> subOps;
public IfRegexp(Element element, SimpleMethod simpleMethod) throws MiniLangException {
super(element, simpleMethod);
@@ -57,11 +58,10 @@ public class IfRegexp extends MethodOper
this.fieldAcsr = new ContextAccessor<Object>(element.getAttribute("field"), element.getAttribute("field-name"));
this.mapAcsr = new ContextAccessor<Map<String, ? extends Object>>(element.getAttribute("map-name"));
this.exprExdr = FlexibleStringExpander.getInstance(element.getAttribute("expr"));
- SimpleMethod.readOperations(element, subOps, simpleMethod);
+ this.subOps = Collections.unmodifiableList(SimpleMethod.readOperations(element, simpleMethod));
Element elseElement = UtilXml.firstChildElement(element, "else");
if (elseElement != null) {
- elseSubOps = FastList.newInstance();
- SimpleMethod.readOperations(elseElement, elseSubOps, simpleMethod);
+ this.elseSubOps = Collections.unmodifiableList(SimpleMethod.readOperations(elseElement, simpleMethod));
}
}
Modified: ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/ifops/IfValidateMethod.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/ifops/IfValidateMethod.java?rev=1331875&r1=1331874&r2=1331875&view=diff
==============================================================================
--- ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/ifops/IfValidateMethod.java (original)
+++ ofbiz/trunk/framework/minilang/src/org/ofbiz/minilang/method/ifops/IfValidateMethod.java Sun Apr 29 08:11:53 2012
@@ -19,6 +19,7 @@
package org.ofbiz.minilang.method.ifops;
import java.lang.reflect.Method;
+import java.util.Collections;
import java.util.List;
import java.util.Map;
@@ -47,7 +48,7 @@ public class IfValidateMethod extends Me
ContextAccessor<Object> fieldAcsr;
ContextAccessor<Map<String, ? extends Object>> mapAcsr;
String methodName;
- List<MethodOperation> subOps = FastList.newInstance();
+ List<MethodOperation> subOps;
public IfValidateMethod(Element element, SimpleMethod simpleMethod) throws MiniLangException {
super(element, simpleMethod);
@@ -56,11 +57,10 @@ public class IfValidateMethod extends Me
this.mapAcsr = new ContextAccessor<Map<String, ? extends Object>>(element.getAttribute("map-name"));
this.methodName = element.getAttribute("method");
this.className = element.getAttribute("class");
- SimpleMethod.readOperations(element, subOps, simpleMethod);
+ this.subOps = Collections.unmodifiableList(SimpleMethod.readOperations(element, simpleMethod));
Element elseElement = UtilXml.firstChildElement(element, "else");
if (elseElement != null) {
- elseSubOps = FastList.newInstance();
- SimpleMethod.readOperations(elseElement, elseSubOps, simpleMethod);
+ this.elseSubOps = Collections.unmodifiableList(SimpleMethod.readOperations(elseElement, simpleMethod));
}
}