]> 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/SlcExecutionMessage.js
Splitted the LauncherApplet into two different applets. The first one is a generic...
[gpl/argeo-slc.git] / org.argeo.slc.webapp / src / main / webapp / argeo-ria-lib / slc / class / org / argeo / slc / ria / SlcExecutionMessage.js
index 1ecb0e906378151b679ce091944fd1071d0c7b3d..b81d86bc66d9f906b78d883c905313d3eb3aeda0 100644 (file)
@@ -42,6 +42,10 @@ qx.Class.define("org.argeo.slc.ria.SlcExecutionMessage", {
                        check : "String",\r
                        init : "user"\r
                },\r
+               date : {\r
+                       check : "String", \r
+                       init : new Date().toString()\r
+               },\r
                /**\r
                 * Additionnal attributes as map of key/values\r
                 */\r
@@ -64,7 +68,7 @@ qx.Class.define("org.argeo.slc.ria.SlcExecutionMessage", {
                 */\r
                toXml : function (){\r
                        var builder = new qx.util.StringBuilder();\r
-                       builder.add('<slc:slc-execution uuid="'+this.getUuid()+'">');\r
+                       builder.add('<slc:slc-execution  xmlns:slc="http://argeo.org/projects/slc/schemas" uuid="'+this.getUuid()+'">');\r
                        builder.add('<slc:status>'+this.getStatus()+'</slc:status>');\r
                        builder.add('<slc:type>'+this.getType()+'</slc:type>');\r
                        builder.add('<slc:host>'+this.getHost()+'</slc:host>');\r
@@ -79,6 +83,22 @@ qx.Class.define("org.argeo.slc.ria.SlcExecutionMessage", {
                        }\r
                        builder.add('</slc:slc-execution>');\r
                        return builder.get();\r
+               },\r
+               \r
+               fromXml : function(slcExecXml){\r
+                       var NSMap = {slc:"http://argeo.org/projects/slc/schemas"};                      \r
+                       this.setStatus(org.argeo.ria.util.Element.getSingleNodeText(slcExecXml, "slc:status", NSMap));\r
+                       this.setType(org.argeo.ria.util.Element.getSingleNodeText(slcExecXml, "slc:type", NSMap));\r
+                       this.setHost(org.argeo.ria.util.Element.getSingleNodeText(slcExecXml, "slc:host", NSMap));\r
+                       this.setUser(org.argeo.ria.util.Element.getSingleNodeText(slcExecXml, "slc:user", NSMap));\r
+                       var attributes = org.argeo.ria.util.Element.selectNodes(slcExecXml, "slc:attribute", NSMap);\r
+                       for(var i=0;i<attributes.length;i++){\r
+                               this.addAttribute(attribute.getAttribute("name"), attribute.firstChild);\r
+                       }\r
+                       var stepsDates = org.argeo.ria.util.Element.selectNodes(slcExecXml, "slc:steps/slc:slc-execution-step/slc:begin", NSMap);\r
+                       if(stepsDates.length){\r
+                               this.setDate(org.argeo.ria.util.Element.getSingleNodeText(stepsDates[stepsDates.length-1], ".", NSMap));\r
+                       }\r
                }\r
        }       \r
 });
\ No newline at end of file