You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ofbiz.apache.org by do...@apache.org on 2008/08/03 07:10:31 UTC
svn commit: r682102 - in /ofbiz/trunk/framework/widget/src/org/ofbiz/widget:
form/ menu/ screen/ tree/
Author: doogie
Date: Sat Aug 2 22:10:30 2008
New Revision: 682102
URL: http://svn.apache.org/viewvc?rev=682102&view=rev
Log:
More generics work; a bit of fallout from the recent
FlexibleMapAccessor generification. Plus a few additional changes.
Modified:
ofbiz/trunk/framework/widget/src/org/ofbiz/widget/form/ModelForm.java
ofbiz/trunk/framework/widget/src/org/ofbiz/widget/form/ModelFormAction.java
ofbiz/trunk/framework/widget/src/org/ofbiz/widget/form/ModelFormField.java
ofbiz/trunk/framework/widget/src/org/ofbiz/widget/menu/ModelMenu.java
ofbiz/trunk/framework/widget/src/org/ofbiz/widget/menu/ModelMenuAction.java
ofbiz/trunk/framework/widget/src/org/ofbiz/widget/menu/ModelMenuCondition.java
ofbiz/trunk/framework/widget/src/org/ofbiz/widget/screen/IterateSectionWidget.java
ofbiz/trunk/framework/widget/src/org/ofbiz/widget/screen/ModelScreenAction.java
ofbiz/trunk/framework/widget/src/org/ofbiz/widget/screen/ModelScreenCondition.java
ofbiz/trunk/framework/widget/src/org/ofbiz/widget/tree/ModelTree.java
ofbiz/trunk/framework/widget/src/org/ofbiz/widget/tree/ModelTreeAction.java
ofbiz/trunk/framework/widget/src/org/ofbiz/widget/tree/ModelTreeCondition.java
Modified: ofbiz/trunk/framework/widget/src/org/ofbiz/widget/form/ModelForm.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/widget/src/org/ofbiz/widget/form/ModelForm.java?rev=682102&r1=682101&r2=682102&view=diff
==============================================================================
--- ofbiz/trunk/framework/widget/src/org/ofbiz/widget/form/ModelForm.java (original)
+++ ofbiz/trunk/framework/widget/src/org/ofbiz/widget/form/ModelForm.java Sat Aug 2 22:10:30 2008
@@ -87,7 +87,7 @@
protected String tooltip;
protected String listName;
protected String listEntryName;
- protected FlexibleMapAccessor defaultMapName;
+ protected FlexibleMapAccessor<Map<String, ? extends Object>> defaultMapName;
protected String defaultEntityName;
protected String defaultServiceName;
protected String formTitleAreaStyle;
@@ -1785,8 +1785,8 @@
return this.defaultMapName.getOriginalName();
}
- public Map getDefaultMap(Map<String, Object> context) {
- return (Map) this.defaultMapName.get(context);
+ public Map<String, ? extends Object> getDefaultMap(Map<String, ? extends Object> context) {
+ return this.defaultMapName.get(context);
}
/**
@@ -2040,7 +2040,7 @@
* @param string
*/
public void setDefaultMapName(String string) {
- this.defaultMapName = new FlexibleMapAccessor(string);
+ this.defaultMapName = new FlexibleMapAccessor<Map<String, ? extends Object>>(string);
}
/**
Modified: ofbiz/trunk/framework/widget/src/org/ofbiz/widget/form/ModelFormAction.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/widget/src/org/ofbiz/widget/form/ModelFormAction.java?rev=682102&r1=682101&r2=682102&view=diff
==============================================================================
--- ofbiz/trunk/framework/widget/src/org/ofbiz/widget/form/ModelFormAction.java (original)
+++ ofbiz/trunk/framework/widget/src/org/ofbiz/widget/form/ModelFormAction.java Sat Aug 2 22:10:30 2008
@@ -34,6 +34,7 @@
import org.ofbiz.base.util.GeneralException;
import org.ofbiz.base.util.GroovyUtil;
import org.ofbiz.base.util.ObjectType;
+import org.ofbiz.base.util.UtilGenerics;
import org.ofbiz.base.util.UtilProperties;
import org.ofbiz.base.util.UtilValidate;
import org.ofbiz.base.util.UtilXml;
@@ -67,10 +68,7 @@
public static List<ModelFormAction> readSubActions(ModelForm modelForm, Element parentElement) {
List<ModelFormAction> actions = new LinkedList<ModelFormAction>();
- List actionElementList = UtilXml.childElementList(parentElement);
- Iterator actionElementIter = actionElementList.iterator();
- while (actionElementIter.hasNext()) {
- Element actionElement = (Element) actionElementIter.next();
+ for (Element actionElement: UtilXml.childElementList(parentElement)) {
if ("set".equals(actionElement.getNodeName())) {
actions.add(new SetField(modelForm, actionElement));
} else if ("property-map".equals(actionElement.getNodeName())) {
@@ -95,20 +93,18 @@
return actions;
}
- public static void runSubActions(List actions, Map<String, Object> context) {
+ public static void runSubActions(List<ModelFormAction> actions, Map<String, Object> context) {
if (actions == null) return;
- Iterator actionIter = actions.iterator();
- while (actionIter.hasNext()) {
- ModelFormAction action = (ModelFormAction) actionIter.next();
+ for (ModelFormAction action: actions) {
if (Debug.verboseOn()) Debug.logVerbose("Running screen action " + action.getClass().getName(), module);
action.runAction(context);
}
}
public static class SetField extends ModelFormAction {
- protected FlexibleMapAccessor field;
- protected FlexibleMapAccessor fromField;
+ protected FlexibleMapAccessor<Object> field;
+ protected FlexibleMapAccessor<String> fromField;
protected FlexibleStringExpander valueExdr;
protected FlexibleStringExpander defaultExdr;
protected FlexibleStringExpander globalExdr;
@@ -116,8 +112,8 @@
public SetField(ModelForm modelForm, Element setElement) {
super (modelForm, setElement);
- this.field = new FlexibleMapAccessor(setElement.getAttribute("field"));
- this.fromField = UtilValidate.isNotEmpty(setElement.getAttribute("from-field")) ? new FlexibleMapAccessor(setElement.getAttribute("from-field")) : null;
+ this.field = new FlexibleMapAccessor<Object>(setElement.getAttribute("field"));
+ this.fromField = UtilValidate.isNotEmpty(setElement.getAttribute("from-field")) ? new FlexibleMapAccessor<String>(setElement.getAttribute("from-field")) : null;
this.valueExdr = UtilValidate.isNotEmpty(setElement.getAttribute("value")) ? new FlexibleStringExpander(setElement.getAttribute("value")) : null;
this.defaultExdr = new FlexibleStringExpander(setElement.getAttribute("default-value"));
this.globalExdr = new FlexibleStringExpander(setElement.getAttribute("global"));
@@ -159,14 +155,14 @@
this.field.put(context, newValue);
if (global) {
- Map globalCtx = (Map) context.get("globalContext");
+ Map<String, Object> globalCtx = UtilGenerics.checkMap(context.get("globalContext"));
if (globalCtx != null) {
this.field.put(globalCtx, newValue);
}
}
// this is a hack for backward compatibility with the JPublish page object
- Map page = (Map) context.get("page");
+ Map<String, Object> page = UtilGenerics.checkMap(context.get("page"));
if (page != null) {
this.field.put(page, newValue);
}
@@ -175,13 +171,13 @@
public static class PropertyMap extends ModelFormAction {
protected FlexibleStringExpander resourceExdr;
- protected FlexibleMapAccessor mapNameAcsr;
+ protected FlexibleMapAccessor<Map<String, Object>> mapNameAcsr;
protected FlexibleStringExpander globalExdr;
public PropertyMap(ModelForm modelForm, Element setElement) {
super (modelForm, setElement);
this.resourceExdr = new FlexibleStringExpander(setElement.getAttribute("resource"));
- this.mapNameAcsr = new FlexibleMapAccessor(setElement.getAttribute("map-name"));
+ this.mapNameAcsr = new FlexibleMapAccessor<Map<String, Object>>(setElement.getAttribute("map-name"));
this.globalExdr = new FlexibleStringExpander(setElement.getAttribute("global"));
}
@@ -192,11 +188,11 @@
Locale locale = (Locale) context.get("locale");
String resource = this.resourceExdr.expandString(context, locale);
- Map propertyMap = UtilProperties.getResourceBundleMap(resource, locale);
+ Map<String, Object> propertyMap = UtilProperties.getResourceBundleMap(resource, locale);
this.mapNameAcsr.put(context, propertyMap);
if (global) {
- Map globalCtx = (Map) context.get("globalContext");
+ Map<String, Object> globalCtx = UtilGenerics.checkMap(context.get("globalContext"));
if (globalCtx != null) {
this.mapNameAcsr.put(globalCtx, propertyMap);
}
@@ -208,20 +204,20 @@
protected FlexibleStringExpander resourceExdr;
protected FlexibleStringExpander propertyExdr;
- protected FlexibleMapAccessor fieldAcsr;
+ protected FlexibleMapAccessor<String> fieldAcsr;
protected FlexibleStringExpander defaultExdr;
protected boolean noLocale;
- protected FlexibleMapAccessor argListAcsr;
+ protected FlexibleMapAccessor<List<Object>> argListAcsr;
protected FlexibleStringExpander globalExdr;
public PropertyToField(ModelForm modelForm, Element setElement) {
super (modelForm, setElement);
this.resourceExdr = new FlexibleStringExpander(setElement.getAttribute("resource"));
this.propertyExdr = new FlexibleStringExpander(setElement.getAttribute("property"));
- this.fieldAcsr = new FlexibleMapAccessor(setElement.getAttribute("field"));
+ this.fieldAcsr = new FlexibleMapAccessor<String>(setElement.getAttribute("field"));
this.defaultExdr = new FlexibleStringExpander(setElement.getAttribute("default"));
noLocale = "true".equals(setElement.getAttribute("no-locale"));
- this.argListAcsr = new FlexibleMapAccessor(setElement.getAttribute("arg-list-name"));
+ this.argListAcsr = new FlexibleMapAccessor<List<Object>>(setElement.getAttribute("arg-list-name"));
this.globalExdr = new FlexibleStringExpander(setElement.getAttribute("global"));
}
@@ -250,7 +246,7 @@
value = FlexibleStringExpander.expandString(value, context);
if (!argListAcsr.isEmpty()) {
- List argList = (List) argListAcsr.get(context);
+ List<Object> argList = argListAcsr.get(context);
if (argList != null && argList.size() > 0) {
value = MessageFormat.format(value, argList.toArray());
}
@@ -293,7 +289,7 @@
public static class Service extends ModelFormAction {
protected FlexibleStringExpander serviceNameExdr;
- protected FlexibleMapAccessor resultMapNameAcsr;
+ protected FlexibleMapAccessor<Map<String, Object>> resultMapNameAcsr;
protected FlexibleStringExpander autoFieldMapExdr;
protected FlexibleStringExpander resultMapListNameExdr;
protected Map<FlexibleMapAccessor, Object> fieldMap;
@@ -301,7 +297,7 @@
public Service(ModelForm modelForm, Element serviceElement) {
super (modelForm, serviceElement);
this.serviceNameExdr = new FlexibleStringExpander(serviceElement.getAttribute("service-name"));
- this.resultMapNameAcsr = UtilValidate.isNotEmpty(serviceElement.getAttribute("result-map-name")) ? new FlexibleMapAccessor(serviceElement.getAttribute("result-map-name")) : null;
+ this.resultMapNameAcsr = UtilValidate.isNotEmpty(serviceElement.getAttribute("result-map-name")) ? new FlexibleMapAccessor<Map<String, Object>>(serviceElement.getAttribute("result-map-name")) : null;
this.autoFieldMapExdr = new FlexibleStringExpander(serviceElement.getAttribute("auto-field-map"));
if (UtilValidate.isEmpty(serviceElement.getAttribute("result-map-list-name"))) {
if (UtilValidate.isEmpty(serviceElement.getAttribute("result-map-list-iterator-name"))) {
Modified: ofbiz/trunk/framework/widget/src/org/ofbiz/widget/form/ModelFormField.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/widget/src/org/ofbiz/widget/form/ModelFormField.java?rev=682102&r1=682101&r2=682102&view=diff
==============================================================================
--- ofbiz/trunk/framework/widget/src/org/ofbiz/widget/form/ModelFormField.java (original)
+++ ofbiz/trunk/framework/widget/src/org/ofbiz/widget/form/ModelFormField.java Sat Aug 2 22:10:30 2008
@@ -32,6 +32,7 @@
import java.util.TimeZone;
import javolution.util.FastList;
+import javolution.util.FastMap;
import org.ofbiz.base.util.BshUtil;
import org.ofbiz.base.util.Debug;
@@ -76,10 +77,10 @@
protected ModelForm modelForm;
protected String name;
- protected FlexibleMapAccessor mapAcsr;
+ protected FlexibleMapAccessor<Map<String, ? extends Object>> mapAcsr;
protected String entityName;
protected String serviceName;
- protected FlexibleMapAccessor entryAcsr;
+ protected FlexibleMapAccessor<Object> entryAcsr;
protected String parameterName;
protected String fieldName;
protected String attributeName;
@@ -695,7 +696,7 @@
}
} else {
//Debug.logInfo("Getting entry, isError false so getting from Map in context for field " + this.getName() + " of form " + this.modelForm.getName(), module);
- Map dataMap = this.getMap(context);
+ Map<String, ? extends Object> dataMap = this.getMap(context);
boolean dataMapIsContext = false;
if (dataMap == null) {
//Debug.logInfo("Getting entry, no Map found with name " + this.getMapName() + ", using context for field " + this.getName() + " of form " + this.modelForm.getName(), module);
@@ -723,7 +724,7 @@
// this is a special case to fill in fields during a create by default from parameters passed in
if (dataMapIsContext && retVal == null && !Boolean.FALSE.equals(useRequestParameters)) {
- Map parameters = (Map) context.get("parameters");
+ Map<String, ? extends Object> parameters = UtilGenerics.checkMap(context.get("parameters"));
if (parameters != null) {
if (this.entryAcsr != null && !this.entryAcsr.isEmpty()) {
retVal = this.entryAcsr.get(parameters);
@@ -760,13 +761,13 @@
}
}
- public Map getMap(Map<String, Object> context) {
+ public Map<String, ? extends Object> getMap(Map<String, ? extends Object> context) {
if (this.mapAcsr == null || this.mapAcsr.isEmpty()) {
//Debug.logInfo("Getting Map from default of the form because of no mapAcsr for field " + this.getName(), module);
return this.modelForm.getDefaultMap(context);
} else {
//Debug.logInfo("Getting Map from mapAcsr for field " + this.getName(), module);
- return (Map) mapAcsr.get(context);
+ return mapAcsr.get(context);
}
}
@@ -1217,7 +1218,7 @@
* @param string
*/
public void setEntryName(String string) {
- entryAcsr = new FlexibleMapAccessor(string);
+ entryAcsr = new FlexibleMapAccessor<Object>(string);
}
/**
@@ -1231,7 +1232,7 @@
* @param string
*/
public void setMapName(String string) {
- this.mapAcsr = new FlexibleMapAccessor(string);
+ this.mapAcsr = new FlexibleMapAccessor<Map<String, ? extends Object>>(string);
}
/**
@@ -1624,35 +1625,34 @@
}
public static class ListOptions extends OptionSource {
- protected FlexibleMapAccessor listAcsr;
+ protected FlexibleMapAccessor<List<? extends Object>> listAcsr;
protected String listEntryName;
- protected FlexibleMapAccessor keyAcsr;
+ protected FlexibleMapAccessor<String> keyAcsr;
protected FlexibleStringExpander description;
public ListOptions(String listName, String listEntryName, String keyName, String description, FieldInfo fieldInfo) {
- this.listAcsr = new FlexibleMapAccessor(listName);
+ this.listAcsr = new FlexibleMapAccessor<List<? extends Object>>(listName);
this.listEntryName = listEntryName;
- this.keyAcsr = new FlexibleMapAccessor(keyName);
+ this.keyAcsr = new FlexibleMapAccessor<String>(keyName);
this.description = new FlexibleStringExpander(description);
this.fieldInfo = fieldInfo;
}
public ListOptions(Element optionElement, FieldInfo fieldInfo) {
this.listEntryName = optionElement.getAttribute("list-entry-name");
- this.keyAcsr = new FlexibleMapAccessor(optionElement.getAttribute("key-name"));
- this.listAcsr = new FlexibleMapAccessor(optionElement.getAttribute("list-name"));
+ this.keyAcsr = new FlexibleMapAccessor<String>(optionElement.getAttribute("key-name"));
+ this.listAcsr = new FlexibleMapAccessor<List<? extends Object>>(optionElement.getAttribute("list-name"));
this.listEntryName = optionElement.getAttribute("list-entry-name");
this.description = new FlexibleStringExpander(optionElement.getAttribute("description"));
this.fieldInfo = fieldInfo;
}
public void addOptionValues(List<OptionValue> optionValues, Map<String, Object> context, GenericDelegator delegator) {
- List dataList = (List) this.listAcsr.get(context);
+ List<? extends Object> dataList = UtilGenerics.checkList(this.listAcsr.get(context));
if (dataList != null && dataList.size() != 0) {
- Iterator dataIter = dataList.iterator();
- while (dataIter.hasNext()) {
- Object data = dataIter.next();
- Map<String, Object> localContext = new HashMap<String, Object>(context);
+ for (Object data: dataList) {
+ Map<String, Object> localContext = FastMap.newInstance();
+ localContext.putAll(context);
if (UtilValidate.isNotEmpty(this.listEntryName)) {
localContext.put(this.listEntryName, data);
} else {
Modified: ofbiz/trunk/framework/widget/src/org/ofbiz/widget/menu/ModelMenu.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/widget/src/org/ofbiz/widget/menu/ModelMenu.java?rev=682102&r1=682101&r2=682102&view=diff
==============================================================================
--- ofbiz/trunk/framework/widget/src/org/ofbiz/widget/menu/ModelMenu.java (original)
+++ ofbiz/trunk/framework/widget/src/org/ofbiz/widget/menu/ModelMenu.java Sat Aug 2 22:10:30 2008
@@ -72,7 +72,7 @@
protected String defaultCellWidth;
protected Boolean defaultHideIfSelected;
protected String defaultDisabledTitleStyle;
- protected FlexibleMapAccessor selectedMenuItemContextFieldName;
+ protected FlexibleMapAccessor<String> selectedMenuItemContextFieldName;
protected FlexibleStringExpander menuContainerStyleExdr;
protected String defaultAlign;
protected String defaultAlignStyle;
@@ -226,7 +226,7 @@
if (this.defaultDisabledTitleStyle == null || menuElement.hasAttribute("default-disabled-title-style"))
this.defaultDisabledTitleStyle = menuElement.getAttribute("default-disabled-title-style");
if (this.selectedMenuItemContextFieldName == null || menuElement.hasAttribute("selected-menuitem-context-field-name"))
- this.selectedMenuItemContextFieldName = new FlexibleMapAccessor(menuElement.getAttribute("selected-menuitem-context-field-name"));
+ this.selectedMenuItemContextFieldName = new FlexibleMapAccessor<String>(menuElement.getAttribute("selected-menuitem-context-field-name"));
if (this.menuContainerStyleExdr == null || menuElement.hasAttribute("menu-container-style"))
this.setMenuContainerStyle(menuElement.getAttribute("menu-container-style"));
if (this.defaultAlign == null || menuElement.hasAttribute("default-align"))
@@ -440,7 +440,7 @@
* @return
*/
public String getSelectedMenuItemContextFieldName(Map<String, Object> context) {
- String menuItemName = (String)this.selectedMenuItemContextFieldName.get(context);
+ String menuItemName = this.selectedMenuItemContextFieldName.get(context);
if (UtilValidate.isEmpty(menuItemName)) {
return this.defaultMenuItemName;
}
Modified: ofbiz/trunk/framework/widget/src/org/ofbiz/widget/menu/ModelMenuAction.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/widget/src/org/ofbiz/widget/menu/ModelMenuAction.java?rev=682102&r1=682101&r2=682102&view=diff
==============================================================================
--- ofbiz/trunk/framework/widget/src/org/ofbiz/widget/menu/ModelMenuAction.java (original)
+++ ofbiz/trunk/framework/widget/src/org/ofbiz/widget/menu/ModelMenuAction.java Sat Aug 2 22:10:30 2008
@@ -19,7 +19,6 @@
package org.ofbiz.widget.menu;
import java.text.MessageFormat;
-import java.util.HashMap;
import java.util.Iterator;
import java.util.LinkedList;
import java.util.List;
@@ -27,10 +26,13 @@
import java.util.Map;
import java.util.TimeZone;
+import javolution.util.FastMap;
+
import org.ofbiz.base.util.BshUtil;
import org.ofbiz.base.util.Debug;
import org.ofbiz.base.util.GeneralException;
import org.ofbiz.base.util.ObjectType;
+import org.ofbiz.base.util.UtilGenerics;
import org.ofbiz.base.util.UtilFormatOut;
import org.ofbiz.base.util.UtilProperties;
import org.ofbiz.base.util.UtilValidate;
@@ -117,8 +119,8 @@
}
public static class SetField extends ModelMenuAction {
- protected FlexibleMapAccessor field;
- protected FlexibleMapAccessor fromField;
+ protected FlexibleMapAccessor<Object> field;
+ protected FlexibleMapAccessor<Object> fromField;
protected FlexibleStringExpander valueExdr;
protected FlexibleStringExpander defaultExdr;
protected FlexibleStringExpander globalExdr;
@@ -128,8 +130,8 @@
public SetField(ModelMenu modelMenu, Element setElement) {
super (modelMenu, setElement);
- this.field = new FlexibleMapAccessor(setElement.getAttribute("field"));
- this.fromField = UtilValidate.isNotEmpty(setElement.getAttribute("from-field")) ? new FlexibleMapAccessor(setElement.getAttribute("from-field")) : null;
+ this.field = new FlexibleMapAccessor<Object>(setElement.getAttribute("field"));
+ this.fromField = UtilValidate.isNotEmpty(setElement.getAttribute("from-field")) ? new FlexibleMapAccessor<Object>(setElement.getAttribute("from-field")) : null;
this.valueExdr = UtilValidate.isNotEmpty(setElement.getAttribute("value")) ? new FlexibleStringExpander(setElement.getAttribute("value")) : null;
this.defaultExdr = UtilValidate.isNotEmpty(setElement.getAttribute("default-value")) ? new FlexibleStringExpander(setElement.getAttribute("default-value")) : null;
this.globalExdr = new FlexibleStringExpander(setElement.getAttribute("global"));
@@ -219,14 +221,14 @@
}
if (global) {
- Map globalCtx = (Map) context.get("globalContext");
+ Map<String, Object> globalCtx = UtilGenerics.checkMap(context.get("globalContext"));
if (globalCtx != null) {
this.field.put(globalCtx, newValue);
}
}
// this is a hack for backward compatibility with the JPublish page object
- Map page = (Map) context.get("page");
+ Map<String, Object> page = UtilGenerics.checkMap(context.get("page"));
if (page != null) {
this.field.put(page, newValue);
}
@@ -235,13 +237,13 @@
public static class PropertyMap extends ModelMenuAction {
protected FlexibleStringExpander resourceExdr;
- protected FlexibleMapAccessor mapNameAcsr;
+ protected FlexibleMapAccessor<Map<String, Object>> mapNameAcsr;
protected FlexibleStringExpander globalExdr;
public PropertyMap(ModelMenu modelMenu, Element setElement) {
super (modelMenu, setElement);
this.resourceExdr = new FlexibleStringExpander(setElement.getAttribute("resource"));
- this.mapNameAcsr = new FlexibleMapAccessor(setElement.getAttribute("map-name"));
+ this.mapNameAcsr = new FlexibleMapAccessor<Map<String, Object>>(setElement.getAttribute("map-name"));
this.globalExdr = new FlexibleStringExpander(setElement.getAttribute("global"));
}
@@ -252,11 +254,11 @@
Locale locale = (Locale) context.get("locale");
String resource = this.resourceExdr.expandString(context, locale);
- Map propertyMap = UtilProperties.getResourceBundleMap(resource, locale);
+ Map<String, Object> propertyMap = UtilProperties.getResourceBundleMap(resource, locale);
this.mapNameAcsr.put(context, propertyMap);
if (global) {
- Map globalCtx = (Map) context.get("globalContext");
+ Map<String, Object> globalCtx = UtilGenerics.checkMap(context.get("globalContext"));
if (globalCtx != null) {
this.mapNameAcsr.put(globalCtx, propertyMap);
}
@@ -268,20 +270,20 @@
protected FlexibleStringExpander resourceExdr;
protected FlexibleStringExpander propertyExdr;
- protected FlexibleMapAccessor fieldAcsr;
+ protected FlexibleMapAccessor<Object> fieldAcsr;
protected FlexibleStringExpander defaultExdr;
protected boolean noLocale;
- protected FlexibleMapAccessor argListAcsr;
+ protected FlexibleMapAccessor<List<? extends Object>> argListAcsr;
protected FlexibleStringExpander globalExdr;
public PropertyToField(ModelMenu modelMenu, Element setElement) {
super (modelMenu, setElement);
this.resourceExdr = new FlexibleStringExpander(setElement.getAttribute("resource"));
this.propertyExdr = new FlexibleStringExpander(setElement.getAttribute("property"));
- this.fieldAcsr = new FlexibleMapAccessor(setElement.getAttribute("field"));
+ this.fieldAcsr = new FlexibleMapAccessor<Object>(setElement.getAttribute("field"));
this.defaultExdr = new FlexibleStringExpander(setElement.getAttribute("default"));
noLocale = "true".equals(setElement.getAttribute("no-locale"));
- this.argListAcsr = new FlexibleMapAccessor(setElement.getAttribute("arg-list-name"));
+ this.argListAcsr = new FlexibleMapAccessor<List<? extends Object>>(setElement.getAttribute("arg-list-name"));
this.globalExdr = new FlexibleStringExpander(setElement.getAttribute("global"));
}
@@ -308,7 +310,7 @@
value = FlexibleStringExpander.expandString(value, context);
if (!argListAcsr.isEmpty()) {
- List argList = (List) argListAcsr.get(context);
+ List<? extends Object> argList = argListAcsr.get(context);
if (argList != null && argList.size() > 0) {
value = MessageFormat.format(value, argList.toArray());
}
@@ -343,26 +345,24 @@
public static class Service extends ModelMenuAction {
protected FlexibleStringExpander serviceNameExdr;
- protected FlexibleMapAccessor resultMapNameAcsr;
+ protected FlexibleMapAccessor<Map<String, Object>> resultMapNameAcsr;
protected FlexibleStringExpander autoFieldMapExdr;
- protected Map<FlexibleMapAccessor, FlexibleMapAccessor> fieldMap;
+ protected Map<FlexibleMapAccessor<Object>, FlexibleMapAccessor<Object>> fieldMap;
public Service(ModelMenu modelMenu, Element serviceElement) {
super (modelMenu, serviceElement);
this.serviceNameExdr = new FlexibleStringExpander(serviceElement.getAttribute("service-name"));
- this.resultMapNameAcsr = UtilValidate.isNotEmpty(serviceElement.getAttribute("result-map-name")) ? new FlexibleMapAccessor(serviceElement.getAttribute("result-map-name")) : null;
+ this.resultMapNameAcsr = UtilValidate.isNotEmpty(serviceElement.getAttribute("result-map-name")) ? new FlexibleMapAccessor<Map<String, Object>>(serviceElement.getAttribute("result-map-name")) : null;
this.autoFieldMapExdr = new FlexibleStringExpander(serviceElement.getAttribute("auto-field-map"));
- List fieldMapElementList = UtilXml.childElementList(serviceElement, "field-map");
+ List<? extends Element> fieldMapElementList = UtilXml.childElementList(serviceElement, "field-map");
if (fieldMapElementList.size() > 0) {
- this.fieldMap = new HashMap<FlexibleMapAccessor, FlexibleMapAccessor>();
- Iterator fieldMapElementIter = fieldMapElementList.iterator();
- while (fieldMapElementIter.hasNext()) {
- Element fieldMapElement = (Element) fieldMapElementIter.next();
+ this.fieldMap = FastMap.newInstance();
+ for (Element fieldMapElement: fieldMapElementList) {
// set the env-name for each field-name, noting that if no field-name is specified it defaults to the env-name
this.fieldMap.put(
- new FlexibleMapAccessor(UtilFormatOut.checkEmpty(fieldMapElement.getAttribute("field-name"), fieldMapElement.getAttribute("env-name"))),
- new FlexibleMapAccessor(fieldMapElement.getAttribute("env-name")));
+ new FlexibleMapAccessor<Object>(UtilFormatOut.checkEmpty(fieldMapElement.getAttribute("field-name"), fieldMapElement.getAttribute("env-name"))),
+ new FlexibleMapAccessor<Object>(fieldMapElement.getAttribute("env-name")));
}
}
}
@@ -381,15 +381,13 @@
if (autoFieldMapBool) {
serviceContext = this.modelMenu.getDispacher().getDispatchContext().makeValidContext(serviceNameExpanded, ModelService.IN_PARAM, context);
} else {
- serviceContext = new HashMap<String, Object>();
+ serviceContext = FastMap.newInstance();
}
if (this.fieldMap != null) {
- Iterator fieldMapEntryIter = this.fieldMap.entrySet().iterator();
- while (fieldMapEntryIter.hasNext()) {
- Map.Entry entry = (Map.Entry) fieldMapEntryIter.next();
- FlexibleMapAccessor serviceContextFieldAcsr = (FlexibleMapAccessor) entry.getKey();
- FlexibleMapAccessor contextEnvAcsr = (FlexibleMapAccessor) entry.getValue();
+ for (Map.Entry<FlexibleMapAccessor<Object>, FlexibleMapAccessor<Object>> entry: this.fieldMap.entrySet()) {
+ FlexibleMapAccessor<Object> serviceContextFieldAcsr = entry.getKey();
+ FlexibleMapAccessor<Object> contextEnvAcsr = entry.getValue();
serviceContextFieldAcsr.put(serviceContext, contextEnvAcsr.get(context));
}
}
Modified: ofbiz/trunk/framework/widget/src/org/ofbiz/widget/menu/ModelMenuCondition.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/widget/src/org/ofbiz/widget/menu/ModelMenuCondition.java?rev=682102&r1=682101&r2=682102&view=diff
==============================================================================
--- ofbiz/trunk/framework/widget/src/org/ofbiz/widget/menu/ModelMenuCondition.java (original)
+++ ofbiz/trunk/framework/widget/src/org/ofbiz/widget/menu/ModelMenuCondition.java Sat Aug 2 22:10:30 2008
@@ -331,13 +331,13 @@
}
public static class IfValidateMethod extends MenuCondition {
- protected FlexibleMapAccessor fieldAcsr;
+ protected FlexibleMapAccessor<Object> fieldAcsr;
protected FlexibleStringExpander methodExdr;
protected FlexibleStringExpander classExdr;
public IfValidateMethod(ModelMenuItem modelMenuItem, Element condElement) {
super (modelMenuItem, condElement);
- this.fieldAcsr = new FlexibleMapAccessor(condElement.getAttribute("field-name"));
+ this.fieldAcsr = new FlexibleMapAccessor<Object>(condElement.getAttribute("field-name"));
this.methodExdr = new FlexibleStringExpander(condElement.getAttribute("method"));
this.classExdr = new FlexibleStringExpander(condElement.getAttribute("class"));
}
@@ -390,7 +390,7 @@
}
public static class IfCompare extends MenuCondition {
- protected FlexibleMapAccessor fieldAcsr;
+ protected FlexibleMapAccessor<Object> fieldAcsr;
protected FlexibleStringExpander valueExdr;
protected String operator;
@@ -399,7 +399,7 @@
public IfCompare(ModelMenuItem modelMenuItem, Element condElement) {
super (modelMenuItem, condElement);
- this.fieldAcsr = new FlexibleMapAccessor(condElement.getAttribute("field-name"));
+ this.fieldAcsr = new FlexibleMapAccessor<Object>(condElement.getAttribute("field-name"));
this.valueExdr = new FlexibleStringExpander(condElement.getAttribute("value"));
this.operator = condElement.getAttribute("operator");
@@ -439,8 +439,8 @@
}
public static class IfCompareField extends MenuCondition {
- protected FlexibleMapAccessor fieldAcsr;
- protected FlexibleMapAccessor toFieldAcsr;
+ protected FlexibleMapAccessor<Object> fieldAcsr;
+ protected FlexibleMapAccessor<Object> toFieldAcsr;
protected String operator;
protected String type;
@@ -448,8 +448,8 @@
public IfCompareField(ModelMenuItem modelMenuItem, Element condElement) {
super (modelMenuItem, condElement);
- this.fieldAcsr = new FlexibleMapAccessor(condElement.getAttribute("field-name"));
- this.toFieldAcsr = new FlexibleMapAccessor(condElement.getAttribute("to-field-name"));
+ this.fieldAcsr = new FlexibleMapAccessor<Object>(condElement.getAttribute("field-name"));
+ this.toFieldAcsr = new FlexibleMapAccessor<Object>(condElement.getAttribute("to-field-name"));
this.operator = condElement.getAttribute("operator");
this.type = condElement.getAttribute("type");
@@ -491,12 +491,12 @@
static PatternMatcher matcher = new Perl5Matcher();
static PatternCompiler compiler = new Perl5Compiler();
- protected FlexibleMapAccessor fieldAcsr;
+ protected FlexibleMapAccessor<Object> fieldAcsr;
protected FlexibleStringExpander exprExdr;
public IfRegexp(ModelMenuItem modelMenuItem, Element condElement) {
super (modelMenuItem, condElement);
- this.fieldAcsr = new FlexibleMapAccessor(condElement.getAttribute("field-name"));
+ this.fieldAcsr = new FlexibleMapAccessor<Object>(condElement.getAttribute("field-name"));
this.exprExdr = new FlexibleStringExpander(condElement.getAttribute("expr"));
}
@@ -526,11 +526,11 @@
}
public static class IfEmpty extends MenuCondition {
- protected FlexibleMapAccessor fieldAcsr;
+ protected FlexibleMapAccessor<Object> fieldAcsr;
public IfEmpty(ModelMenuItem modelMenuItem, Element condElement) {
super (modelMenuItem, condElement);
- this.fieldAcsr = new FlexibleMapAccessor(condElement.getAttribute("field-name"));
+ this.fieldAcsr = new FlexibleMapAccessor<Object>(condElement.getAttribute("field-name"));
}
public boolean eval(Map<String, Object> context) {
Modified: ofbiz/trunk/framework/widget/src/org/ofbiz/widget/screen/IterateSectionWidget.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/widget/src/org/ofbiz/widget/screen/IterateSectionWidget.java?rev=682102&r1=682101&r2=682102&view=diff
==============================================================================
--- ofbiz/trunk/framework/widget/src/org/ofbiz/widget/screen/IterateSectionWidget.java (original)
+++ ofbiz/trunk/framework/widget/src/org/ofbiz/widget/screen/IterateSectionWidget.java Sat Aug 2 22:10:30 2008
@@ -50,7 +50,7 @@
protected ModelScreenWidget childWidget;
protected List<ModelScreenWidget.Section> sectionList;
- protected FlexibleMapAccessor listNameExdr;
+ protected FlexibleMapAccessor<Object> listNameExdr;
protected FlexibleStringExpander entryNameExdr;
protected FlexibleStringExpander keyNameExdr;
protected FlexibleStringExpander paginateTarget;
@@ -67,7 +67,7 @@
public IterateSectionWidget(ModelScreen modelScreen, Element iterateSectionElement) {
super(modelScreen, iterateSectionElement);
- listNameExdr = new FlexibleMapAccessor(iterateSectionElement.getAttribute("list-name"));
+ listNameExdr = new FlexibleMapAccessor<Object>(iterateSectionElement.getAttribute("list-name"));
entryNameExdr = new FlexibleStringExpander(iterateSectionElement.getAttribute("entry-name"));
keyNameExdr = new FlexibleStringExpander(iterateSectionElement.getAttribute("key-name"));
if (this.paginateTarget == null || iterateSectionElement.hasAttribute("paginate-target"))
@@ -133,9 +133,7 @@
contextMs.put("itemIndex", Integer.valueOf(itemIndex));
rowCount++;
- Iterator sectionIter = this.sectionList.iterator();
- while (sectionIter.hasNext()) {
- ModelScreenWidget.Section section = (ModelScreenWidget.Section)sectionIter.next();
+ for (ModelScreenWidget.Section section: this.sectionList) {
section.renderWidgetString(writer, contextMs, screenStringRenderer);
}
}
Modified: ofbiz/trunk/framework/widget/src/org/ofbiz/widget/screen/ModelScreenAction.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/widget/src/org/ofbiz/widget/screen/ModelScreenAction.java?rev=682102&r1=682101&r2=682102&view=diff
==============================================================================
--- ofbiz/trunk/framework/widget/src/org/ofbiz/widget/screen/ModelScreenAction.java (original)
+++ ofbiz/trunk/framework/widget/src/org/ofbiz/widget/screen/ModelScreenAction.java Sat Aug 2 22:10:30 2008
@@ -125,8 +125,8 @@
@SuppressWarnings("serial")
public static class SetField extends ModelScreenAction {
- protected FlexibleMapAccessor field;
- protected FlexibleMapAccessor fromField;
+ protected FlexibleMapAccessor<Object> field;
+ protected FlexibleMapAccessor<Object> fromField;
protected FlexibleStringExpander valueExdr;
protected FlexibleStringExpander defaultExdr;
protected FlexibleStringExpander globalExdr;
@@ -136,8 +136,8 @@
public SetField(ModelScreen modelScreen, Element setElement) {
super (modelScreen, setElement);
- this.field = new FlexibleMapAccessor(setElement.getAttribute("field"));
- this.fromField = new FlexibleMapAccessor(setElement.getAttribute("from-field"));
+ this.field = new FlexibleMapAccessor<Object>(setElement.getAttribute("field"));
+ this.fromField = new FlexibleMapAccessor<Object>(setElement.getAttribute("from-field"));
this.valueExdr = new FlexibleStringExpander(setElement.getAttribute("value"));
this.defaultExdr = new FlexibleStringExpander(setElement.getAttribute("default-value"));
this.globalExdr = new FlexibleStringExpander(setElement.getAttribute("global"));
@@ -232,7 +232,7 @@
}
if (global) {
- Map globalCtx = (Map) context.get("globalContext");
+ Map<String, Object> globalCtx = UtilGenerics.checkMap(context.get("globalContext"));
if (globalCtx != null) {
this.field.put(globalCtx, newValue);
} else {
@@ -241,7 +241,7 @@
}
// this is a hack for backward compatibility with the JPublish page object
- Map page = (Map) context.get("page");
+ Map<String, Object> page = UtilGenerics.checkMap(context.get("page"));
if (page != null) {
this.field.put(page, newValue);
}
@@ -280,13 +280,13 @@
@SuppressWarnings("serial")
public static class PropertyMap extends ModelScreenAction {
protected FlexibleStringExpander resourceExdr;
- protected FlexibleMapAccessor mapNameAcsr;
+ protected FlexibleMapAccessor<ResourceBundleMapWrapper> mapNameAcsr;
protected FlexibleStringExpander globalExdr;
public PropertyMap(ModelScreen modelScreen, Element setElement) {
super (modelScreen, setElement);
this.resourceExdr = new FlexibleStringExpander(setElement.getAttribute("resource"));
- this.mapNameAcsr = new FlexibleMapAccessor(setElement.getAttribute("map-name"));
+ this.mapNameAcsr = new FlexibleMapAccessor<ResourceBundleMapWrapper>(setElement.getAttribute("map-name"));
this.globalExdr = new FlexibleStringExpander(setElement.getAttribute("global"));
}
@@ -298,7 +298,7 @@
Locale locale = (Locale) context.get("locale");
String resource = this.resourceExdr.expandString(context, locale);
- ResourceBundleMapWrapper existingPropMap = (ResourceBundleMapWrapper) this.mapNameAcsr.get(context);
+ ResourceBundleMapWrapper existingPropMap = this.mapNameAcsr.get(context);
if (existingPropMap == null) {
this.mapNameAcsr.put(context, UtilProperties.getResourceBundleMap(resource, locale, context));
} else {
@@ -306,9 +306,9 @@
}
if (global) {
- Map globalCtx = (Map) context.get("globalContext");
+ Map<String, Object> globalCtx = UtilGenerics.checkMap(context.get("globalContext"));
if (globalCtx != null) {
- ResourceBundleMapWrapper globalExistingPropMap = (ResourceBundleMapWrapper) this.mapNameAcsr.get(globalCtx);
+ ResourceBundleMapWrapper globalExistingPropMap = this.mapNameAcsr.get(globalCtx);
if (globalExistingPropMap == null) {
this.mapNameAcsr.put(globalCtx, UtilProperties.getResourceBundleMap(resource, locale, context));
} else {
@@ -327,20 +327,20 @@
protected FlexibleStringExpander resourceExdr;
protected FlexibleStringExpander propertyExdr;
- protected FlexibleMapAccessor fieldAcsr;
+ protected FlexibleMapAccessor<Object> fieldAcsr;
protected FlexibleStringExpander defaultExdr;
protected boolean noLocale;
- protected FlexibleMapAccessor argListAcsr;
+ protected FlexibleMapAccessor<List<? extends Object>> argListAcsr;
protected FlexibleStringExpander globalExdr;
public PropertyToField(ModelScreen modelScreen, Element setElement) {
super (modelScreen, setElement);
this.resourceExdr = new FlexibleStringExpander(setElement.getAttribute("resource"));
this.propertyExdr = new FlexibleStringExpander(setElement.getAttribute("property"));
- this.fieldAcsr = new FlexibleMapAccessor(setElement.getAttribute("field"));
+ this.fieldAcsr = new FlexibleMapAccessor<Object>(setElement.getAttribute("field"));
this.defaultExdr = new FlexibleStringExpander(setElement.getAttribute("default"));
noLocale = "true".equals(setElement.getAttribute("no-locale"));
- this.argListAcsr = new FlexibleMapAccessor(setElement.getAttribute("arg-list-name"));
+ this.argListAcsr = new FlexibleMapAccessor<List<? extends Object>>(setElement.getAttribute("arg-list-name"));
this.globalExdr = new FlexibleStringExpander(setElement.getAttribute("global"));
}
@@ -369,7 +369,7 @@
value = FlexibleStringExpander.expandString(value, context);
if (!argListAcsr.isEmpty()) {
- List argList = (List) argListAcsr.get(context);
+ List<? extends Object> argList = argListAcsr.get(context);
if (argList != null && argList.size() > 0) {
value = MessageFormat.format(value, argList.toArray());
}
@@ -423,14 +423,14 @@
@SuppressWarnings("serial")
public static class Service extends ModelScreenAction {
protected FlexibleStringExpander serviceNameExdr;
- protected FlexibleMapAccessor resultMapNameAcsr;
+ protected FlexibleMapAccessor<Map<String, Object>> resultMapNameAcsr;
protected FlexibleStringExpander autoFieldMapExdr;
protected Map<FlexibleMapAccessor, Object> fieldMap;
public Service(ModelScreen modelScreen, Element serviceElement) {
super (modelScreen, serviceElement);
this.serviceNameExdr = new FlexibleStringExpander(serviceElement.getAttribute("service-name"));
- this.resultMapNameAcsr = UtilValidate.isNotEmpty(serviceElement.getAttribute("result-map-name")) ? new FlexibleMapAccessor(serviceElement.getAttribute("result-map-name")) : null;
+ this.resultMapNameAcsr = UtilValidate.isNotEmpty(serviceElement.getAttribute("result-map-name")) ? new FlexibleMapAccessor<Map<String, Object>>(serviceElement.getAttribute("result-map-name")) : null;
this.autoFieldMapExdr = new FlexibleStringExpander(serviceElement.getAttribute("auto-field-map"));
this.fieldMap = EntityFinderUtil.makeFieldMap(serviceElement);
}
@@ -558,15 +558,15 @@
@SuppressWarnings("serial")
public static class GetRelatedOne extends ModelScreenAction {
- protected FlexibleMapAccessor valueNameAcsr;
- protected FlexibleMapAccessor toValueNameAcsr;
+ protected FlexibleMapAccessor<Object> valueNameAcsr;
+ protected FlexibleMapAccessor<Object> toValueNameAcsr;
protected String relationName;
protected boolean useCache;
public GetRelatedOne(ModelScreen modelScreen, Element getRelatedOneElement) {
super (modelScreen, getRelatedOneElement);
- this.valueNameAcsr = new FlexibleMapAccessor(getRelatedOneElement.getAttribute("value-name"));
- this.toValueNameAcsr = new FlexibleMapAccessor(getRelatedOneElement.getAttribute("to-value-name"));
+ this.valueNameAcsr = new FlexibleMapAccessor<Object>(getRelatedOneElement.getAttribute("value-name"));
+ this.toValueNameAcsr = new FlexibleMapAccessor<Object>(getRelatedOneElement.getAttribute("to-value-name"));
this.relationName = getRelatedOneElement.getAttribute("relation-name");
this.useCache = "true".equals(getRelatedOneElement.getAttribute("use-cache"));
}
@@ -600,20 +600,20 @@
@SuppressWarnings("serial")
public static class GetRelated extends ModelScreenAction {
- protected FlexibleMapAccessor valueNameAcsr;
- protected FlexibleMapAccessor listNameAcsr;
- protected FlexibleMapAccessor mapAcsr;
- protected FlexibleMapAccessor orderByListAcsr;
+ protected FlexibleMapAccessor<Object> valueNameAcsr;
+ protected FlexibleMapAccessor<List<GenericValue>> listNameAcsr;
+ protected FlexibleMapAccessor<Map<String, Object>> mapAcsr;
+ protected FlexibleMapAccessor<List<String>> orderByListAcsr;
protected String relationName;
protected boolean useCache;
public GetRelated(ModelScreen modelScreen, Element getRelatedElement) {
super (modelScreen, getRelatedElement);
- this.valueNameAcsr = new FlexibleMapAccessor(getRelatedElement.getAttribute("value-name"));
- this.listNameAcsr = new FlexibleMapAccessor(getRelatedElement.getAttribute("list-name"));
+ this.valueNameAcsr = new FlexibleMapAccessor<Object>(getRelatedElement.getAttribute("value-name"));
+ this.listNameAcsr = new FlexibleMapAccessor<List<GenericValue>>(getRelatedElement.getAttribute("list-name"));
this.relationName = getRelatedElement.getAttribute("relation-name");
- this.mapAcsr = new FlexibleMapAccessor(getRelatedElement.getAttribute("map-name"));
- this.orderByListAcsr = new FlexibleMapAccessor(getRelatedElement.getAttribute("order-by-list-name"));
+ this.mapAcsr = new FlexibleMapAccessor<Map<String, Object>>(getRelatedElement.getAttribute("map-name"));
+ this.orderByListAcsr = new FlexibleMapAccessor<List<String>>(getRelatedElement.getAttribute("order-by-list-name"));
this.useCache = "true".equals(getRelatedElement.getAttribute("use-cache"));
}
@@ -631,11 +631,11 @@
GenericValue value = (GenericValue) valueObject;
List<String> orderByNames = null;
if (!orderByListAcsr.isEmpty()) {
- orderByNames = UtilGenerics.toList(orderByListAcsr.get(context));
+ orderByNames = orderByListAcsr.get(context);
}
Map<String, Object> constraintMap = null;
if (!mapAcsr.isEmpty()) {
- constraintMap = UtilGenerics.toMap(mapAcsr.get(context));
+ constraintMap = mapAcsr.get(context);
}
try {
if (useCache) {
Modified: ofbiz/trunk/framework/widget/src/org/ofbiz/widget/screen/ModelScreenCondition.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/widget/src/org/ofbiz/widget/screen/ModelScreenCondition.java?rev=682102&r1=682101&r2=682102&view=diff
==============================================================================
--- ofbiz/trunk/framework/widget/src/org/ofbiz/widget/screen/ModelScreenCondition.java (original)
+++ ofbiz/trunk/framework/widget/src/org/ofbiz/widget/screen/ModelScreenCondition.java Sat Aug 2 22:10:30 2008
@@ -324,13 +324,13 @@
}
public static class IfValidateMethod extends ScreenCondition {
- protected FlexibleMapAccessor fieldAcsr;
+ protected FlexibleMapAccessor<Object> fieldAcsr;
protected FlexibleStringExpander methodExdr;
protected FlexibleStringExpander classExdr;
public IfValidateMethod(ModelScreen modelScreen, Element condElement) {
super (modelScreen, condElement);
- this.fieldAcsr = new FlexibleMapAccessor(condElement.getAttribute("field-name"));
+ this.fieldAcsr = new FlexibleMapAccessor<Object>(condElement.getAttribute("field-name"));
this.methodExdr = new FlexibleStringExpander(condElement.getAttribute("method"));
this.classExdr = new FlexibleStringExpander(condElement.getAttribute("class"));
}
@@ -383,7 +383,7 @@
}
public static class IfCompare extends ScreenCondition {
- protected FlexibleMapAccessor fieldAcsr;
+ protected FlexibleMapAccessor<Object> fieldAcsr;
protected FlexibleStringExpander valueExdr;
protected String operator;
@@ -392,7 +392,7 @@
public IfCompare(ModelScreen modelScreen, Element condElement) {
super (modelScreen, condElement);
- this.fieldAcsr = new FlexibleMapAccessor(condElement.getAttribute("field-name"));
+ this.fieldAcsr = new FlexibleMapAccessor<Object>(condElement.getAttribute("field-name"));
this.valueExdr = new FlexibleStringExpander(condElement.getAttribute("value"));
this.operator = condElement.getAttribute("operator");
@@ -432,8 +432,8 @@
}
public static class IfCompareField extends ScreenCondition {
- protected FlexibleMapAccessor fieldAcsr;
- protected FlexibleMapAccessor toFieldAcsr;
+ protected FlexibleMapAccessor<Object> fieldAcsr;
+ protected FlexibleMapAccessor<Object> toFieldAcsr;
protected String operator;
protected String type;
@@ -441,8 +441,8 @@
public IfCompareField(ModelScreen modelScreen, Element condElement) {
super (modelScreen, condElement);
- this.fieldAcsr = new FlexibleMapAccessor(condElement.getAttribute("field-name"));
- this.toFieldAcsr = new FlexibleMapAccessor(condElement.getAttribute("to-field-name"));
+ this.fieldAcsr = new FlexibleMapAccessor<Object>(condElement.getAttribute("field-name"));
+ this.toFieldAcsr = new FlexibleMapAccessor<Object>(condElement.getAttribute("to-field-name"));
this.operator = condElement.getAttribute("operator");
this.type = condElement.getAttribute("type");
@@ -484,12 +484,12 @@
static PatternMatcher matcher = new Perl5Matcher();
static PatternCompiler compiler = new Perl5Compiler();
- protected FlexibleMapAccessor fieldAcsr;
+ protected FlexibleMapAccessor<Object> fieldAcsr;
protected FlexibleStringExpander exprExdr;
public IfRegexp(ModelScreen modelScreen, Element condElement) {
super (modelScreen, condElement);
- this.fieldAcsr = new FlexibleMapAccessor(condElement.getAttribute("field-name"));
+ this.fieldAcsr = new FlexibleMapAccessor<Object>(condElement.getAttribute("field-name"));
this.exprExdr = new FlexibleStringExpander(condElement.getAttribute("expr"));
}
@@ -519,11 +519,11 @@
}
public static class IfEmpty extends ScreenCondition {
- protected FlexibleMapAccessor fieldAcsr;
+ protected FlexibleMapAccessor<Object> fieldAcsr;
public IfEmpty(ModelScreen modelScreen, Element condElement) {
super (modelScreen, condElement);
- this.fieldAcsr = new FlexibleMapAccessor(condElement.getAttribute("field-name"));
+ this.fieldAcsr = new FlexibleMapAccessor<Object>(condElement.getAttribute("field-name"));
}
public boolean eval(Map<String, Object> context) {
Modified: ofbiz/trunk/framework/widget/src/org/ofbiz/widget/tree/ModelTree.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/widget/src/org/ofbiz/widget/tree/ModelTree.java?rev=682102&r1=682101&r2=682102&view=diff
==============================================================================
--- ofbiz/trunk/framework/widget/src/org/ofbiz/widget/tree/ModelTree.java (original)
+++ ofbiz/trunk/framework/widget/src/org/ofbiz/widget/tree/ModelTree.java Sat Aug 2 22:10:30 2008
@@ -20,8 +20,6 @@
import java.io.IOException;
import java.io.StringWriter;
-import java.util.ArrayList;
-import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.ListIterator;
@@ -31,6 +29,7 @@
import javax.xml.parsers.ParserConfigurationException;
import javolution.util.FastList;
+import javolution.util.FastMap;
import org.ofbiz.base.util.Debug;
import org.ofbiz.base.util.GeneralException;
@@ -69,8 +68,8 @@
protected String rootNodeName;
protected String defaultRenderStyle;
protected FlexibleStringExpander defaultWrapStyleExdr;
- protected List<ModelNode> nodeList = new ArrayList<ModelNode>();
- protected Map<String, ModelNode> nodeMap = new HashMap<String, ModelNode>();
+ protected List<ModelNode> nodeList = FastList.newInstance();
+ protected Map<String, ModelNode> nodeMap = FastMap.newInstance();
protected GenericDelegator delegator;
protected LocalDispatcher dispatcher;
protected FlexibleStringExpander expandCollapseRequestExdr;
@@ -266,8 +265,8 @@
protected Label label;
protected Link link;
protected Image image;
- protected List<ModelSubNode> subNodeList = new ArrayList<ModelSubNode>();
- protected List<ModelTreeAction> actions = new ArrayList<ModelTreeAction>();
+ protected List<ModelSubNode> subNodeList = FastList.newInstance();
+ protected List<ModelTreeAction> actions = FastList.newInstance();
protected String name;
protected ModelTree modelTree;
protected List<Object []> subNodeValues;
@@ -536,17 +535,15 @@
}
public void getChildren(Map<String, Object> context) {
- this.subNodeValues = new ArrayList<Object []>();
- Iterator nodeIter = subNodeList.iterator();
- while (nodeIter.hasNext()) {
- ModelSubNode subNode = (ModelSubNode)nodeIter.next();
+ this.subNodeValues = FastList.newInstance();
+ for (ModelSubNode subNode: subNodeList) {
String nodeName = subNode.getNodeName(context);
ModelNode node = (ModelNode)modelTree.nodeMap.get(nodeName);
- List subNodeActions = subNode.getActions();
+ List<ModelTreeAction> subNodeActions = subNode.getActions();
//if (Debug.infoOn()) Debug.logInfo(" context.currentValue:" + context.get("currentValue"), module);
ModelTreeAction.runSubActions(subNodeActions, context);
// List dataFound = (List)context.get("dataFound");
- ListIterator dataIter = subNode.getListIterator();
+ Iterator<? extends Map<String, ? extends Object>> dataIter = subNode.getListIterator();
if (dataIter instanceof EntityListIterator) {
EntityListIterator eli = (EntityListIterator) dataIter;
Map val = null;
@@ -686,8 +683,8 @@
protected ModelNode rootNode;
protected FlexibleStringExpander nodeNameExdr;
- protected List<ModelTreeAction> actions = new ArrayList<ModelTreeAction>();
- protected ListIterator listIterator;
+ protected List<ModelTreeAction> actions = FastList.newInstance();
+ protected ListIterator<? extends Map<String, ? extends Object>> listIterator;
public ModelSubNode() {}
@@ -726,15 +723,15 @@
return this.nodeNameExdr.expandString(context);
}
- public List getActions() {
+ public List<ModelTreeAction> getActions() {
return actions;
}
- public void setListIterator(ListIterator iter) {
+ public void setListIterator(ListIterator<? extends Map<String, ? extends Object>> iter) {
listIterator = iter;
}
- public ListIterator getListIterator() {
+ public ListIterator<? extends Map<String, ? extends Object>> getListIterator() {
return listIterator;
}
}
Modified: ofbiz/trunk/framework/widget/src/org/ofbiz/widget/tree/ModelTreeAction.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/widget/src/org/ofbiz/widget/tree/ModelTreeAction.java?rev=682102&r1=682101&r2=682102&view=diff
==============================================================================
--- ofbiz/trunk/framework/widget/src/org/ofbiz/widget/tree/ModelTreeAction.java (original)
+++ ofbiz/trunk/framework/widget/src/org/ofbiz/widget/tree/ModelTreeAction.java Sat Aug 2 22:10:30 2008
@@ -18,7 +18,6 @@
*******************************************************************************/
package org.ofbiz.widget.tree;
-import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.ListIterator;
@@ -27,6 +26,8 @@
import java.util.regex.PatternSyntaxException;
import java.util.TimeZone;
+import javolution.util.FastMap;
+
import org.ofbiz.base.util.BshUtil;
import org.ofbiz.base.util.Debug;
import org.ofbiz.base.util.GeneralException;
@@ -102,26 +103,24 @@
}
*/
- public static void runSubActions(List actions, Map<String, Object> context) {
- Iterator actionIter = actions.iterator();
- while (actionIter.hasNext()) {
- ModelTreeAction action = (ModelTreeAction) actionIter.next();
+ public static void runSubActions(List<ModelTreeAction> actions, Map<String, Object> context) {
+ for (ModelTreeAction action: actions) {
if (Debug.verboseOn()) Debug.logVerbose("Running tree action " + action.getClass().getName(), module);
action.runAction(context);
}
}
public static class SetField extends ModelTreeAction {
- protected FlexibleMapAccessor field;
- protected FlexibleMapAccessor fromField;
+ protected FlexibleMapAccessor<Object> field;
+ protected FlexibleMapAccessor<Object> fromField;
protected FlexibleStringExpander valueExdr;
protected FlexibleStringExpander globalExdr;
protected String type;
public SetField(ModelTree.ModelNode modelNode, Element setElement) {
super (modelNode, setElement);
- this.field = new FlexibleMapAccessor(setElement.getAttribute("field"));
- this.fromField = UtilValidate.isNotEmpty(setElement.getAttribute("from-field")) ? new FlexibleMapAccessor(setElement.getAttribute("from-field")) : null;
+ this.field = new FlexibleMapAccessor<Object>(setElement.getAttribute("field"));
+ this.fromField = UtilValidate.isNotEmpty(setElement.getAttribute("from-field")) ? new FlexibleMapAccessor<Object>(setElement.getAttribute("from-field")) : null;
this.valueExdr = UtilValidate.isNotEmpty(setElement.getAttribute("value")) ? new FlexibleStringExpander(setElement.getAttribute("value")) : null;
this.globalExdr = new FlexibleStringExpander(setElement.getAttribute("global"));
this.type = setElement.getAttribute("type");
@@ -154,14 +153,14 @@
this.field.put(context, newValue);
if (global) {
- Map globalCtx = (Map) context.get("globalContext");
+ Map<String, Object> globalCtx = UtilGenerics.checkMap(context.get("globalContext"));
if (globalCtx != null) {
this.field.put(globalCtx, newValue);
}
}
// this is a hack for backward compatibility with the JPublish page object
- Map page = (Map) context.get("page");
+ Map<String, Object> page = UtilGenerics.checkMap(context.get("page"));
if (page != null) {
this.field.put(page, newValue);
}
@@ -189,10 +188,13 @@
Object obj = context.get("_LIST_ITERATOR_");
if (this.modelSubNode != null) {
if (obj != null && (obj instanceof EntityListIterator || obj instanceof ListIterator)) {
- this.modelSubNode.setListIterator((ListIterator)obj);
+ ListIterator<? extends Map<String, ? extends Object>> listIt = UtilGenerics.cast(obj);
+ this.modelSubNode.setListIterator(listIt);
} else {
- if (obj instanceof List)
- this.modelSubNode.setListIterator(((List)obj).listIterator());
+ if (obj instanceof List) {
+ List<? extends Map<String, ? extends Object>> list = UtilGenerics.checkList(obj);
+ this.modelSubNode.setListIterator(list.listIterator());
+ }
}
}
} catch (GeneralException e) {
@@ -208,7 +210,7 @@
public static class Service extends ModelTreeAction {
protected FlexibleStringExpander serviceNameExdr;
- protected FlexibleMapAccessor resultMapNameAcsr;
+ protected FlexibleMapAccessor<Map<String, Object>> resultMapNameAcsr;
protected FlexibleStringExpander autoFieldMapExdr;
protected FlexibleStringExpander resultMapListNameExdr;
protected FlexibleStringExpander resultMapListIteratorNameExdr;
@@ -229,7 +231,7 @@
public void initService( Element serviceElement ) {
this.serviceNameExdr = new FlexibleStringExpander(serviceElement.getAttribute("service-name"));
- this.resultMapNameAcsr = UtilValidate.isNotEmpty(serviceElement.getAttribute("result-map-name")) ? new FlexibleMapAccessor(serviceElement.getAttribute("result-map-name")) : null;
+ this.resultMapNameAcsr = UtilValidate.isNotEmpty(serviceElement.getAttribute("result-map-name")) ? new FlexibleMapAccessor<Map<String, Object>>(serviceElement.getAttribute("result-map-name")) : null;
this.autoFieldMapExdr = new FlexibleStringExpander(serviceElement.getAttribute("auto-field-map"));
this.resultMapListNameExdr = new FlexibleStringExpander(serviceElement.getAttribute("result-map-list-name"));
this.resultMapListIteratorNameExdr = new FlexibleStringExpander(serviceElement.getAttribute("result-map-list-iterator-name"));
@@ -252,7 +254,7 @@
if (autoFieldMapBool) {
serviceContext = this.modelTree.getDispatcher().getDispatchContext().makeValidContext(serviceNameExpanded, ModelService.IN_PARAM, context);
} else {
- serviceContext = new HashMap<String, Object>();
+ serviceContext = FastMap.newInstance();
}
if (this.fieldMap != null) {
@@ -285,9 +287,10 @@
if (this.modelSubNode != null) {
//ListIterator iter = null;
if (UtilValidate.isNotEmpty(resultMapListIteratorName)) {
- this.modelSubNode.setListIterator((ListIterator)result.get(resultMapListIteratorName));
+ ListIterator<? extends Map<String, ? extends Object>> listIt = UtilGenerics.cast(result.get(resultMapListIteratorName));
+ this.modelSubNode.setListIterator(listIt);
} else if (UtilValidate.isNotEmpty(resultMapListName)) {
- List lst = (List)result.get(resultMapListName);
+ List<? extends Map<String, ? extends Object>> lst = UtilGenerics.checkList(result.get(resultMapListName));
if (lst != null ) {
this.modelSubNode.setListIterator(lst.listIterator());
}
@@ -353,9 +356,13 @@
finder.runFind(context, this.modelTree.getDelegator());
Object obj = context.get(this.listName);
if (obj != null && (obj instanceof EntityListIterator || obj instanceof ListIterator)) {
- this.modelSubNode.setListIterator((ListIterator)obj);
+ ListIterator<? extends Map<String, ? extends Object>> listIt = UtilGenerics.cast(obj);
+ this.modelSubNode.setListIterator(listIt);
} else {
- if (obj instanceof List) this.modelSubNode.setListIterator(((List)obj).listIterator());
+ if (obj instanceof List) {
+ List<? extends Map<String, ? extends Object>> list = UtilGenerics.checkList(obj);
+ this.modelSubNode.setListIterator(list.listIterator());
+ }
}
} catch (GeneralException e) {
String errMsg = "Error doing entity query by condition: " + e.toString();
@@ -387,9 +394,13 @@
finder.runFind(context, this.modelTree.getDelegator());
Object obj = context.get(this.listName);
if (obj != null && (obj instanceof EntityListIterator || obj instanceof ListIterator)) {
- this.modelSubNode.setListIterator((ListIterator)obj);
+ ListIterator<? extends Map<String, ? extends Object>> listIt = UtilGenerics.cast(obj);
+ this.modelSubNode.setListIterator(listIt);
} else {
- if (obj instanceof List) this.modelSubNode.setListIterator(((List)obj).listIterator());
+ if (obj instanceof List) {
+ List<? extends Map<String, ? extends Object>> list = UtilGenerics.cast(obj);
+ this.modelSubNode.setListIterator(list.listIterator());
+ }
}
} catch (GeneralException e) {
String errMsg = "Error doing entity query by condition: " + e.toString();
Modified: ofbiz/trunk/framework/widget/src/org/ofbiz/widget/tree/ModelTreeCondition.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/widget/src/org/ofbiz/widget/tree/ModelTreeCondition.java?rev=682102&r1=682101&r2=682102&view=diff
==============================================================================
--- ofbiz/trunk/framework/widget/src/org/ofbiz/widget/tree/ModelTreeCondition.java (original)
+++ ofbiz/trunk/framework/widget/src/org/ofbiz/widget/tree/ModelTreeCondition.java Sat Aug 2 22:10:30 2008
@@ -78,12 +78,9 @@
public abstract boolean eval(Map<String, Object> context);
}
- public static List readSubConditions(ModelTree modelTree, Element conditionElement) {
+ public static List<TreeCondition> readSubConditions(ModelTree modelTree, Element conditionElement) {
List<TreeCondition> condList = FastList.newInstance();
- List subElementList = UtilXml.childElementList(conditionElement);
- Iterator subElementIter = subElementList.iterator();
- while (subElementIter.hasNext()) {
- Element subElement = (Element) subElementIter.next();
+ for (Element subElement: UtilXml.childElementList(conditionElement)) {
condList.add(readCondition(modelTree, subElement));
}
return condList;
@@ -121,7 +118,7 @@
}
public static class And extends TreeCondition {
- protected List subConditions;
+ protected List<TreeCondition> subConditions;
public And(ModelTree modelTree, Element condElement) {
super (modelTree, condElement);
@@ -130,9 +127,7 @@
public boolean eval(Map<String, Object> context) {
// return false for the first one in the list that is false, basic and algo
- Iterator subConditionIter = this.subConditions.iterator();
- while (subConditionIter.hasNext()) {
- TreeCondition subCondition = (TreeCondition) subConditionIter.next();
+ for (TreeCondition subCondition: subConditions) {
if (!subCondition.eval(context)) {
return false;
}
@@ -142,7 +137,7 @@
}
public static class Xor extends TreeCondition {
- protected List subConditions;
+ protected List<TreeCondition> subConditions;
public Xor(ModelTree modelTree, Element condElement) {
super (modelTree, condElement);
@@ -152,9 +147,7 @@
public boolean eval(Map<String, Object> context) {
// if more than one is true stop immediately and return false; if all are false return false; if only one is true return true
boolean foundOneTrue = false;
- Iterator subConditionIter = this.subConditions.iterator();
- while (subConditionIter.hasNext()) {
- TreeCondition subCondition = (TreeCondition) subConditionIter.next();
+ for (TreeCondition subCondition: subConditions) {
if (subCondition.eval(context)) {
if (foundOneTrue) {
// now found two true, so return false
@@ -169,7 +162,7 @@
}
public static class Or extends TreeCondition {
- protected List subConditions;
+ protected List<TreeCondition> subConditions;
public Or(ModelTree modelTree, Element condElement) {
super (modelTree, condElement);
@@ -178,9 +171,7 @@
public boolean eval(Map<String, Object> context) {
// return true for the first one in the list that is true, basic or algo
- Iterator subConditionIter = this.subConditions.iterator();
- while (subConditionIter.hasNext()) {
- TreeCondition subCondition = (TreeCondition) subConditionIter.next();
+ for (TreeCondition subCondition: subConditions) {
if (subCondition.eval(context)) {
return true;
}
@@ -238,13 +229,13 @@
}
public static class IfValidateMethod extends TreeCondition {
- protected FlexibleMapAccessor fieldAcsr;
+ protected FlexibleMapAccessor<Object> fieldAcsr;
protected FlexibleStringExpander methodExdr;
protected FlexibleStringExpander classExdr;
public IfValidateMethod(ModelTree modelTree, Element condElement) {
super (modelTree, condElement);
- this.fieldAcsr = new FlexibleMapAccessor(condElement.getAttribute("field-name"));
+ this.fieldAcsr = new FlexibleMapAccessor<Object>(condElement.getAttribute("field-name"));
this.methodExdr = new FlexibleStringExpander(condElement.getAttribute("method"));
this.classExdr = new FlexibleStringExpander(condElement.getAttribute("class"));
}
@@ -297,7 +288,7 @@
}
public static class IfCompare extends TreeCondition {
- protected FlexibleMapAccessor fieldAcsr;
+ protected FlexibleMapAccessor<Object> fieldAcsr;
protected FlexibleStringExpander valueExdr;
protected String operator;
@@ -306,7 +297,7 @@
public IfCompare(ModelTree modelTree, Element condElement) {
super (modelTree, condElement);
- this.fieldAcsr = new FlexibleMapAccessor(condElement.getAttribute("field-name"));
+ this.fieldAcsr = new FlexibleMapAccessor<Object>(condElement.getAttribute("field-name"));
this.valueExdr = new FlexibleStringExpander(condElement.getAttribute("value"));
this.operator = condElement.getAttribute("operator");
@@ -346,8 +337,8 @@
}
public static class IfCompareField extends TreeCondition {
- protected FlexibleMapAccessor fieldAcsr;
- protected FlexibleMapAccessor toFieldAcsr;
+ protected FlexibleMapAccessor<Object> fieldAcsr;
+ protected FlexibleMapAccessor<Object> toFieldAcsr;
protected String operator;
protected String type;
@@ -355,8 +346,8 @@
public IfCompareField(ModelTree modelTree, Element condElement) {
super (modelTree, condElement);
- this.fieldAcsr = new FlexibleMapAccessor(condElement.getAttribute("field-name"));
- this.toFieldAcsr = new FlexibleMapAccessor(condElement.getAttribute("to-field-name"));
+ this.fieldAcsr = new FlexibleMapAccessor<Object>(condElement.getAttribute("field-name"));
+ this.toFieldAcsr = new FlexibleMapAccessor<Object>(condElement.getAttribute("to-field-name"));
this.operator = condElement.getAttribute("operator");
this.type = condElement.getAttribute("type");
@@ -398,12 +389,12 @@
static PatternMatcher matcher = new Perl5Matcher();
static PatternCompiler compiler = new Perl5Compiler();
- protected FlexibleMapAccessor fieldAcsr;
+ protected FlexibleMapAccessor<Object> fieldAcsr;
protected FlexibleStringExpander exprExdr;
public IfRegexp(ModelTree modelTree, Element condElement) {
super (modelTree, condElement);
- this.fieldAcsr = new FlexibleMapAccessor(condElement.getAttribute("field-name"));
+ this.fieldAcsr = new FlexibleMapAccessor<Object>(condElement.getAttribute("field-name"));
this.exprExdr = new FlexibleStringExpander(condElement.getAttribute("expr"));
}
@@ -433,11 +424,11 @@
}
public static class IfEmpty extends TreeCondition {
- protected FlexibleMapAccessor fieldAcsr;
+ protected FlexibleMapAccessor<Object> fieldAcsr;
public IfEmpty(ModelTree modelTree, Element condElement) {
super (modelTree, condElement);
- this.fieldAcsr = new FlexibleMapAccessor(condElement.getAttribute("field-name"));
+ this.fieldAcsr = new FlexibleMapAccessor<Object>(condElement.getAttribute("field-name"));
}
public boolean eval(Map<String, Object> context) {