Author: adrianc
Date: Fri Jan 2 18:55:48 2015
New Revision: 1649090
URL: http://svn.apache.org/r1649090
Log:
Tree widget - remove stored references to Delegator and LocalDispatcher.
Modified:
ofbiz/trunk/framework/widget/src/org/ofbiz/widget/html/HtmlTreeRenderer.java
ofbiz/trunk/framework/widget/src/org/ofbiz/widget/tree/MacroTreeRenderer.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/TreeFactory.java
Modified:
ofbiz/trunk/framework/widget/src/org/ofbiz/widget/html/HtmlTreeRenderer.java
URL:
http://svn.apache.org/viewvc/ofbiz/trunk/framework/widget/src/org/ofbiz/widget/html/HtmlTreeRenderer.java?rev=1649090&r1=1649089&r2=1649090&view=diff
==============================================================================
---
ofbiz/trunk/framework/widget/src/org/ofbiz/widget/html/HtmlTreeRenderer.java
(original)
+++
ofbiz/trunk/framework/widget/src/org/ofbiz/widget/html/HtmlTreeRenderer.java
Fri Jan 2 18:55:48 2015
@@ -61,7 +61,7 @@ public class HtmlTreeRenderer extends Ht
appendWhitespace(writer);
writer.append("<li>");
- String pkName = node.getPkName();
+ String pkName = node.getPkName(context);
String entityId = null;
String entryName = node.getEntryName();
if (UtilValidate.isNotEmpty(entryName)) {
Modified:
ofbiz/trunk/framework/widget/src/org/ofbiz/widget/tree/MacroTreeRenderer.java
URL:
http://svn.apache.org/viewvc/ofbiz/trunk/framework/widget/src/org/ofbiz/widget/tree/MacroTreeRenderer.java?rev=1649090&r1=1649089&r2=1649090&view=diff
==============================================================================
---
ofbiz/trunk/framework/widget/src/org/ofbiz/widget/tree/MacroTreeRenderer.java
(original)
+++
ofbiz/trunk/framework/widget/src/org/ofbiz/widget/tree/MacroTreeRenderer.java
Fri Jan 2 18:55:48 2015
@@ -151,7 +151,7 @@ public class MacroTreeRenderer implement
sr.append("\" />");
executeMacro(sr.toString());
- String pkName = node.getPkName();
+ String pkName = node.getPkName(context);
String entityId = null;
String entryName = node.getEntryName();
if (UtilValidate.isNotEmpty(entryName)) {
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=1649090&r1=1649089&r2=1649090&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 Fri
Jan 2 18:55:48 2015
@@ -50,7 +50,6 @@ import org.ofbiz.entity.model.ModelEntit
import org.ofbiz.entity.model.ModelField;
import org.ofbiz.entity.util.EntityListIterator;
import org.ofbiz.entity.util.EntityQuery;
-import org.ofbiz.service.LocalDispatcher;
import org.ofbiz.widget.ModelWidget;
import org.ofbiz.widget.ModelWidgetAction;
import org.ofbiz.widget.ModelWidgetVisitor;
@@ -73,13 +72,11 @@ public class ModelTree extends ModelWidg
public static final String module = ModelTree.class.getName();
protected String defaultEntityName;
- protected String defaultPkName;
protected String defaultRenderStyle;
protected FlexibleStringExpander defaultWrapStyleExdr;
- protected Delegator delegator;
- protected LocalDispatcher dispatcher;
protected FlexibleStringExpander expandCollapseRequestExdr;
protected boolean forceChildCheck;
+ private final String location;
protected List<ModelNode> nodeList = new ArrayList<ModelNode>();
protected Map<String, ModelNode> nodeMap = new HashMap<String,
ModelNode>();
protected int openDepth;
@@ -91,8 +88,9 @@ public class ModelTree extends ModelWidg
// ===== CONSTRUCTORS =====
/** Default Constructor */
- public ModelTree(Element treeElement, Delegator delegator, LocalDispatcher
dispatcher) {
+ public ModelTree(Element treeElement, String location) {
super(treeElement);
+ this.location = location;
this.rootNodeName = treeElement.getAttribute("root-node-name");
this.defaultRenderStyle =
UtilFormatOut.checkEmpty(treeElement.getAttribute("default-render-style"),
"simple");
// A temporary hack to accommodate those who might still be using
"render-style" instead of "default-render-style"
@@ -105,10 +103,8 @@ public class ModelTree extends ModelWidg
this.expandCollapseRequestExdr =
FlexibleStringExpander.getInstance(treeElement.getAttribute("expand-collapse-request"));
this.trailNameExdr =
FlexibleStringExpander.getInstance(UtilFormatOut.checkEmpty(treeElement.getAttribute("trail-name"),
"trail"));
- this.delegator = delegator;
- this.dispatcher = dispatcher;
this.forceChildCheck =
!"false".equals(treeElement.getAttribute("force-child-check"));
- setDefaultEntityName(treeElement.getAttribute("entity-name"));
+ this.defaultEntityName = treeElement.getAttribute("entity-name");
try {
openDepth =
Integer.parseInt(treeElement.getAttribute("open-depth"));
} catch (NumberFormatException e) {
@@ -144,18 +140,6 @@ public class ModelTree extends ModelWidg
return this.defaultEntityName;
}
- public String getDefaultPkName() {
- return this.defaultPkName;
- }
-
- public Delegator getDelegator() {
- return this.delegator;
- }
-
- public LocalDispatcher getDispatcher() {
- return this.dispatcher;
- }
-
public String getExpandCollapseRequest(Map<String, Object> context) {
String expColReq =
this.expandCollapseRequestExdr.expandString(context);
if (UtilValidate.isEmpty(expColReq)) {
@@ -240,7 +224,7 @@ public class ModelTree extends ModelWidg
if (UtilValidate.isEmpty(trail))
throw new RuntimeException("Tree 'trail' value is empty.");
context.put("rootEntityId", trail.get(0));
- context.put(defaultPkName, trail.get(0));
+ context.put(getDefaultPkName(context), trail.get(0));
} else {
trail = new LinkedList<String>();
}
@@ -257,17 +241,13 @@ public class ModelTree extends ModelWidg
}
}
- public void setDefaultEntityName(String name) {
- String nm = name;
- if (UtilValidate.isEmpty(nm)) {
- nm = "Content";
- }
- this.defaultEntityName = nm;
- ModelEntity modelEntity =
delegator.getModelEntity(this.defaultEntityName);
+ public String getDefaultPkName( Map<String, Object> context) {
+ ModelEntity modelEntity =
WidgetWorker.getDelegator(context).getModelEntity(this.defaultEntityName);
if (modelEntity.getPksSize() == 1) {
ModelField modelField = modelEntity.getOnlyPk();
- this.defaultPkName = modelField.getName();
+ return modelField.getName();
}
+ return null;
}
public void setTreeLocation(String treeLocation) {
@@ -301,7 +281,7 @@ public class ModelTree extends ModelWidg
this.wrapStyleExdr =
FlexibleStringExpander.getInstance(nodeElement.getAttribute("wrap-style"));
this.renderStyle = nodeElement.getAttribute("render-style");
this.entryName =
UtilFormatOut.checkEmpty(nodeElement.getAttribute("entry-name"), null);
- setEntityName(nodeElement.getAttribute("entity-name"));
+ this.entityName = nodeElement.getAttribute("entity-name");
if (this.pkName == null ||
nodeElement.hasAttribute("join-field-name"))
this.pkName = nodeElement.getAttribute("join-field-name");
ArrayList<ModelWidgetAction> actions = new
ArrayList<ModelWidgetAction>();
@@ -409,11 +389,11 @@ public class ModelTree extends ModelWidg
return this.modelTree;
}
- public String getPkName() {
+ public String getPkName(Map<String, Object> context) {
if (UtilValidate.isNotEmpty(this.pkName)) {
return this.pkName;
} else {
- return this.modelTree.getDefaultPkName();
+ return this.modelTree.getDefaultPkName(context);
}
}
@@ -452,7 +432,7 @@ public class ModelTree extends ModelWidg
nodeCount = (Long) obj;
}
String entName = this.getEntityName();
- Delegator delegator = modelTree.getDelegator();
+ Delegator delegator = WidgetWorker.getDelegator(context);
ModelEntity modelEntity = delegator.getModelEntity(entName);
ModelField modelField = null;
if (modelEntity.isField(countFieldName)) {
@@ -476,7 +456,7 @@ public class ModelTree extends ModelWidg
}
*/
nodeCount = Long.valueOf(this.subNodeValues.size());
- String pkName = this.getPkName();
+ String pkName = this.getPkName(context);
String id = null;
if (UtilValidate.isNotEmpty(this.entryName)) {
id = UtilGenerics.<Map<String, String>>
cast(context.get(this.entryName)).get(pkName);
@@ -542,7 +522,7 @@ public class ModelTree extends ModelWidg
context.put("processChildren", Boolean.TRUE);
// this action will usually obtain the "current" entity
ModelTreeAction.runSubActions(this.actions, context);
- String pkName = getPkName();
+ String pkName = getPkName(context);
String id = null;
if (UtilValidate.isNotEmpty(this.entryName)) {
id = UtilGenerics.<Map<String, String>>
cast(context.get(this.entryName)).get(pkName);
@@ -583,7 +563,7 @@ public class ModelTree extends ModelWidg
//GenericPK pk = val.getPrimaryKey();
//if (Debug.infoOn()) Debug.logInfo(" pk:" + pk,
// module);
- String thisPkName = node.getPkName();
+ String thisPkName = node.getPkName(context);
String thisEntityId = (String) val.get(thisPkName);
MapStack<String> newContext =
MapStack.create(context);
newContext.push();
@@ -628,25 +608,6 @@ public class ModelTree extends ModelWidg
}
}
- public void setEntityName(String name) {
- this.entityName = name;
- if (UtilValidate.isNotEmpty(this.entityName)) {
- ModelEntity modelEntity =
modelTree.delegator.getModelEntity(this.entityName);
- if (modelEntity.getPksSize() == 1) {
- ModelField modelField = modelEntity.getOnlyPk();
- this.pkName = modelField.getName();
- } else {
- List<String> pkFieldsName = modelEntity.getPkFieldNames();
- StringBuilder sb = new StringBuilder();
- for (String pk : pkFieldsName) {
- sb.append(pk);
- sb.append("|");
- }
- this.pkName = sb.toString();
- }
- }
- }
-
public void setPkName(String pkName) {
this.pkName = pkName;
}
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=1649090&r1=1649089&r2=1649090&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
Fri Jan 2 18:55:48 2015
@@ -186,7 +186,7 @@ public abstract class ModelTreeAction ex
try {
Map<String, Object> serviceContext = null;
if (autoFieldMapBool) {
- serviceContext =
this.modelTree.getDispatcher().getDispatchContext().makeValidContext(serviceNameExpanded,
ModelService.IN_PARAM, context);
+ serviceContext =
WidgetWorker.getDispatcher(context).getDispatchContext().makeValidContext(serviceNameExpanded,
ModelService.IN_PARAM, context);
} else {
serviceContext = new HashMap<String, Object>();
}
@@ -195,7 +195,7 @@ public abstract class ModelTreeAction ex
EntityFinderUtil.expandFieldMapToContext(this.fieldMap,
context, serviceContext);
}
- Map<String, Object> result =
this.modelTree.getDispatcher().runSync(serviceNameExpanded, serviceContext);
+ Map<String, Object> result =
WidgetWorker.getDispatcher(context).runSync(serviceNameExpanded,
serviceContext);
if (!this.resultMapNameAcsr.isEmpty()) {
this.resultMapNameAcsr.put(context, result);
@@ -275,7 +275,7 @@ public abstract class ModelTreeAction ex
public void runAction(Map<String, Object> context) {
try {
context.put(this.listName, null);
- finder.runFind(context, this.modelTree.getDelegator());
+ finder.runFind(context, WidgetWorker.getDelegator(context));
Object obj = context.get(this.listName);
if (obj != null && (obj instanceof EntityListIterator || obj
instanceof ListIterator<?>)) {
ListIterator<? extends Map<String, ? extends Object>>
listIt = UtilGenerics.cast(obj);
@@ -320,7 +320,7 @@ public abstract class ModelTreeAction ex
public void runAction(Map<String, Object> context) {
try {
context.put(this.listName, null);
- finder.runFind(context, this.modelTree.getDelegator());
+ finder.runFind(context, WidgetWorker.getDelegator(context));
Object obj = context.get(this.listName);
if (obj != null && (obj instanceof EntityListIterator || obj
instanceof ListIterator<?>)) {
ListIterator<? extends Map<String, ? extends Object>>
listIt = UtilGenerics.cast(obj);
Modified:
ofbiz/trunk/framework/widget/src/org/ofbiz/widget/tree/TreeFactory.java
URL:
http://svn.apache.org/viewvc/ofbiz/trunk/framework/widget/src/org/ofbiz/widget/tree/TreeFactory.java?rev=1649090&r1=1649089&r2=1649090&view=diff
==============================================================================
--- ofbiz/trunk/framework/widget/src/org/ofbiz/widget/tree/TreeFactory.java
(original)
+++ ofbiz/trunk/framework/widget/src/org/ofbiz/widget/tree/TreeFactory.java Fri
Jan 2 18:55:48 2015
@@ -78,7 +78,7 @@ public class TreeFactory {
// read document and construct ModelTree for each tree element
Element rootElement = treeFileDoc.getDocumentElement();
for (Element treeElement: UtilXml.childElementList(rootElement,
"tree")) {
- ModelTree modelTree = new ModelTree(treeElement, delegator,
dispatcher);
+ ModelTree modelTree = new ModelTree(treeElement, treeLocation);
modelTree.setTreeLocation(treeLocation);
modelTreeMap.put(modelTree.getName(), modelTree);
}