]> git.argeo.org Git - gpl/argeo-slc.git/blobdiff - org.argeo.slc.webapp/src/main/webapp/argeo-ria-lib/slc/class/org/argeo/slc/ria/execution/Spec.js
Various fixes and "ghost" implementation of reloadBundle.service and flow path.
[gpl/argeo-slc.git] / org.argeo.slc.webapp / src / main / webapp / argeo-ria-lib / slc / class / org / argeo / slc / ria / execution / Spec.js
index 85a8d4a514127998b4e5f37040bca7e4cb65ec58..b72623546f6ac68182b3bd6f2df0deff7b64df0e 100644 (file)
@@ -17,8 +17,7 @@ qx.Class.define("org.argeo.slc.ria.execution.Spec", {
                 * Defined parameters \r
                 */\r
                values : {\r
-                       check : "Map", \r
-                       init : {}\r
+                       check : "Map"\r
                },\r
                /**\r
                 * Castor representation of this object\r
@@ -30,11 +29,12 @@ qx.Class.define("org.argeo.slc.ria.execution.Spec", {
        \r
        statics : {\r
                XPATH_NAME : "@name",\r
-               XPATH_VALUES : "slc:values"\r
+               XPATH_VALUES : "slc:values/slc:value"\r
        },\r
        \r
        construct : function(){\r
                this.base(arguments);\r
+               this.setValues({});\r
        },\r
        \r
        members : {\r
@@ -45,7 +45,28 @@ qx.Class.define("org.argeo.slc.ria.execution.Spec", {
                _applyXmlNode : function(xmlNode){\r
                        // Parse now\r
                        this.setName(org.argeo.ria.util.Element.getSingleNodeText(xmlNode, this.self(arguments).XPATH_NAME));\r
-               }               \r
+                       var values = org.argeo.ria.util.Element.selectNodes(xmlNode, this.self(arguments).XPATH_VALUES);\r
+                       var parsedValues = {};\r
+                       for(var i=0;i<values.length;i++){\r
+                               //var valueNode = values[i];\r
+                               var value = new org.argeo.slc.ria.execution.Value();\r
+                               value.setXmlSpecNode(values[i]);\r
+                               parsedValues[value.getKey()] = value;\r
+                       }\r
+                       this.setValues(parsedValues);\r
+               },\r
+               /**\r
+                * XML Representation of this object.\r
+                * @return {String} An XML String\r
+                */\r
+               toXml : function(){\r
+                       var valuesXml = '';\r
+                       var values = this.getValues();\r
+                       for(var key in values){\r
+                               valuesXml += values[key].toAttributeXml();\r
+                       }\r
+                       return '<slc:default-execution-spec name="'+this.getName()+'"><slc:values>'+valuesXml+'</slc:values></slc:default-execution-spec>';\r
+               }\r
        }       \r
        \r
 });
\ No newline at end of file