check : "String",\r
init : ""\r
},\r
+ label : {\r
+ check : "String",\r
+ init : "" \r
+ },\r
+ description : {\r
+ check : "String",\r
+ init : "" \r
+ },\r
/**\r
* The version of the module\r
*/\r
},\r
\r
statics : {\r
- XPATH_NAME : "slc:execution-module-descriptor/slc:name",\r
- XPATH_VERSION : "slc:execution-module-descriptor/slc:version",\r
- XPATH_EXECUTION_FLOWS : "slc:execution-module-descriptor/slc:execution-flows/slc:execution-flow-descriptor",\r
- XPATH_EXECUTION_SPECS : "slc:execution-module-descriptor/slc:execution-specs/slc:default-execution-spec"\r
+ XPATH_ROOT : "slc:execution-module-descriptor", \r
+ XPATH_NAME : "slc:name",\r
+ XPATH_LABEL : "slc:label",\r
+ XPATH_DESCRIPTION : "slc:description",\r
+ XPATH_VERSION : "slc:version",\r
+ XPATH_EXECUTION_FLOWS : "slc:execution-flows/slc:execution-flow-descriptor",\r
+ XPATH_EXECUTION_SPECS : "slc:execution-specs/slc:default-execution-spec"\r
},\r
\r
construct : function(){\r
return this.getExecutionFlows()[name];\r
},\r
\r
+ moduleDataToXml : function(){\r
+ var xmlData = '<slc:module-name>'+this.getName()+'</slc:module-name>';\r
+ xmlData += '<slc:module-version>'+this.getVersion()+'</slc:module-version>';\r
+ return xmlData;\r
+ },\r
+ \r
/**\r
* An xml node containing the castor mapped description of this object\r
* @param xmlNode {Node}\r
*/\r
_applyXmlNode : function(xmlNode){\r
- // Parse now\r
- this.setName(org.argeo.ria.util.Element.getSingleNodeText(xmlNode, this.self(arguments).XPATH_NAME) || "Not Found");\r
- this.setVersion(org.argeo.ria.util.Element.getSingleNodeText(xmlNode, this.self(arguments).XPATH_VERSION));\r
+ var appendRoot = "";\r
+ if(xmlNode.nodeName != this.self(arguments).XPATH_ROOT){\r
+ appendRoot = this.self(arguments).XPATH_ROOT+"/";\r
+ }\r
+ // Parse now \r
+ this.setName(org.argeo.ria.util.Element.getSingleNodeText(xmlNode, appendRoot + this.self(arguments).XPATH_NAME) || "Not Found");\r
+ this.setVersion(org.argeo.ria.util.Element.getSingleNodeText(xmlNode, appendRoot + this.self(arguments).XPATH_VERSION));\r
+ this.setLabel(org.argeo.ria.util.Element.getSingleNodeText(xmlNode, appendRoot + this.self(arguments).XPATH_LABEL) || this.getName());\r
+ this.setDescription(org.argeo.ria.util.Element.getSingleNodeText(xmlNode, appendRoot + this.self(arguments).XPATH_DESCRIPTION) || "");\r
+ \r
// Parse Specs first\r
- var specs = org.argeo.ria.util.Element.selectNodes(xmlNode, this.self(arguments).XPATH_EXECUTION_SPECS);\r
- for(i=0; i< specs.length;i++){\r
- var execSpec = new org.argeo.slc.ria.execution.Spec();\r
- execSpec.setXmlNode(specs[i]);\r
- this.addExecutionSpec(execSpec);\r
+ var specs = org.argeo.ria.util.Element.selectNodes(xmlNode, appendRoot + this.self(arguments).XPATH_EXECUTION_SPECS);\r
+ if(specs){\r
+ for(i=0; i< specs.length;i++){\r
+ var execSpec = new org.argeo.slc.ria.execution.Spec();\r
+ execSpec.setXmlNode(specs[i]);\r
+ this.addExecutionSpec(execSpec);\r
+ }\r
}\r
- // Now parse Flows : to do AFTER specs\r
- var flows = org.argeo.ria.util.Element.selectNodes(xmlNode, this.self(arguments).XPATH_EXECUTION_FLOWS);\r
- for(var i=0;i<flows.length;i++){\r
- var execFlow = new org.argeo.slc.ria.execution.Flow();\r
- execFlow.setXmlNode(flows[i]);\r
- this.addExecutionFlow(execFlow);\r
+ // Now parse Flows : to do AFTER specs\r
+ var flows = org.argeo.ria.util.Element.selectNodes(xmlNode, appendRoot + this.self(arguments).XPATH_EXECUTION_FLOWS);\r
+ if(flows){\r
+ for(var i=0;i<flows.length;i++){\r
+ var execFlow = new org.argeo.slc.ria.execution.Flow();\r
+ execFlow.setXmlNode(flows[i]);\r
+ this.addExecutionFlow(execFlow);\r
+ }\r
}\r
}\r
\r