]> git.argeo.org Git - gpl/argeo-slc.git/blobdiff - server/org.argeo.slc.ria/src/argeo-ria-lib/slc/class/org/argeo/slc/ria/execution/Flow.js
Change constants names, implement remove
[gpl/argeo-slc.git] / server / org.argeo.slc.ria / src / argeo-ria-lib / slc / class / org / argeo / slc / ria / execution / Flow.js
index 017599ee6f2ce64999faf001ef5449a81458d9e4..0167d9b4eed8fee6db31d56d476f5c2067605619 100644 (file)
@@ -13,6 +13,10 @@ qx.Class.define("org.argeo.slc.ria.execution.Flow", {
                        check : "String",\r
                        init : ""\r
                },\r
+               description : {\r
+                       check : "String",\r
+                       init : ""\r
+               },\r
                /**\r
                 * An optional path describing this flow\r
                 */\r
@@ -36,7 +40,8 @@ qx.Class.define("org.argeo.slc.ria.execution.Flow", {
                 * The values to init the ExecutionSpec\r
                 */\r
                values : {\r
-                       check : "Node"\r
+                       check : "Node",\r
+                       nullable : true\r
                },\r
                /**\r
                 * Castor representation of the object \r
@@ -51,6 +56,10 @@ qx.Class.define("org.argeo.slc.ria.execution.Flow", {
                 * Xpath to the name \r
                 */\r
                XPATH_NAME : "@name",\r
+               /**\r
+                * Path to the description\r
+                */\r
+               XPATH_DESCRIPTION : "slc:description",\r
                /**\r
                 * XPath to the ExecutionSpec name\r
                 */\r
@@ -78,10 +87,13 @@ qx.Class.define("org.argeo.slc.ria.execution.Flow", {
                        this.set({\r
                                name : org.argeo.ria.util.Element.getSingleNodeText(xmlNode, this.self(arguments).XPATH_NAME),\r
                                path : org.argeo.ria.util.Element.getSingleNodeText(xmlNode, this.self(arguments).XPATH_PATH),\r
+                               description : org.argeo.ria.util.Element.getSingleNodeText(xmlNode, this.self(arguments).XPATH_DESCRIPTION) || "",\r
                                executionSpecName : org.argeo.ria.util.Element.getSingleNodeText(xmlNode, this.self(arguments).XPATH_EXEC_SPEC_NAME)\r
                        });\r
                        var values = org.argeo.ria.util.Element.selectNodes(xmlNode, this.self(arguments).XPATH_VALUES);\r
-                       this.setValues(values[0]);\r
+                       if(values[0]){\r
+                               this.setValues(values[0]);\r
+                       }\r
                },\r
                /**\r
                 * Get a given value inside the values map\r
@@ -95,7 +107,7 @@ qx.Class.define("org.argeo.slc.ria.execution.Flow", {
                        if(specType == "primitive"){\r
                                xpath = 'slc:value[@key="'+key+'"]/slc:primitive-value[@type="'+specSubType+'"]';\r
                        }else if(specType == "ref"){\r
-                               xpath = 'slc:value[@key="'+key+'"]/slc:ref-value/slc:label';\r
+                               xpath = 'slc:value[@key="'+key+'"]/slc:ref-value/@ref';\r
                        }\r
                        return org.argeo.ria.util.Element.getSingleNodeText(this.getValues(), xpath);\r
                }\r