svn commit: r1649090 - in /ofbiz/trunk/framework/widget/src/org/ofbiz/widget: html/HtmlTreeRenderer.java tree/MacroTreeRenderer.java tree/ModelTree.java tree/ModelTreeAction.java tree/TreeFactory.java

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

svn commit: r1649090 - in /ofbiz/trunk/framework/widget/src/org/ofbiz/widget: html/HtmlTreeRenderer.java tree/MacroTreeRenderer.java tree/ModelTree.java tree/ModelTreeAction.java tree/TreeFactory.java

adrianc
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);
             }