X-Git-Url: http://git.argeo.org/?a=blobdiff_plain;f=org.argeo.slc.webapp%2Fsrc%2Fmain%2Fwebapp%2Fargeo-ria-lib%2Fslc%2Fclass%2Forg%2Fargeo%2Fslc%2Fria%2FNewLauncherApplet.js;h=6004291975ee1bf064cfe62641b728c761e8cfe0;hb=718a5e325d36108b98a915b1ef4936ffbd979488;hp=4dac53ae200334083290069c0322a743a3469543;hpb=efe57fc34cd70f64a0d9e3cb812d7dbc9b82fb80;p=gpl%2Fargeo-slc.git
diff --git a/org.argeo.slc.webapp/src/main/webapp/argeo-ria-lib/slc/class/org/argeo/slc/ria/NewLauncherApplet.js b/org.argeo.slc.webapp/src/main/webapp/argeo-ria-lib/slc/class/org/argeo/slc/ria/NewLauncherApplet.js
index 4dac53ae2..600429197 100644
--- a/org.argeo.slc.webapp/src/main/webapp/argeo-ria-lib/slc/class/org/argeo/slc/ria/NewLauncherApplet.js
+++ b/org.argeo.slc.webapp/src/main/webapp/argeo-ria-lib/slc/class/org/argeo/slc/ria/NewLauncherApplet.js
@@ -36,17 +36,65 @@ qx.Class.define("org.argeo.slc.ria.NewLauncherApplet",
commands : {
init : {
"submitform" : {
- label : "Execute",
+ label : "Execute Batch On...",
icon : "resource/slc/media-playback-start.png",
- shortcut : "Control+e",
+ shortcut : null,
enabled : true,
menu : "Launcher",
- toolbar : "launcher",
- callback : function(e){
- this.submitForm();
+ toolbar : null,
+ callback : function(e){},
+ submenu : [],
+ submenuCallback : function(commandId){
+ alert("Execute Batch on Agent "+commandId);
},
command : null
},
+ "editexecutionspecs" : {
+ label : "Edit Execution Specs",
+ icon : "resource/slc/document-open.png",
+ shortcut : null,
+ enabled : false,
+ menu : "Launcher",
+ toolbar : null,
+ callback : function(e){
+ var sel = this.list.getSortedSelection();
+ var item = sel[0];
+ var execFlow = item.getUserData("batchEntrySpec").getFlow();
+ var specEditor = new org.argeo.slc.ria.execution.SpecEditor(execFlow);
+ specEditor.attachAndShow();
+ },
+ selectionChange : function(viewId, selection){
+ if(viewId != "form:list") return;
+ this.setEnabled(false);
+ if((selection && selection.length == 1)) this.setEnabled(true);
+ },
+ command : null
+ },
+ "removefrombatch" : {
+ label : "Remove from batch",
+ icon : "resource/slc/edit-delete.png",
+ shortcut : null,
+ enabled : false,
+ menu : "Launcher",
+ toolbar : null,
+ callback : function(e){
+ var sel = this.list.getSortedSelection();
+ var modal = new org.argeo.ria.components.Modal("Confirm", null);
+ modal.addConfirm("Are you sure you want to remove
the selected test" + (sel.length>1?"s":"") + " from the Batch?");
+ modal.addListener("ok", function(){
+ for(var i=0;i 0)) this.setEnabled(true);
+ },
+ command : null
+ },
"reloadagents" : {
label : "Reload Agents",
icon : "resource/slc/view-refresh.png",
@@ -60,30 +108,28 @@ qx.Class.define("org.argeo.slc.ria.NewLauncherApplet",
},
command : null
},
- "testloadmodules" : {
- label : "Load Modules",
+ "reloadtree" : {
+ label : "Reload",
icon : "resource/slc/view-refresh.png",
shortcut : "Control+m",
- enabled : true,
+ enabled : false,
menu : "Launcher",
toolbar : "launcher",
callback : function(e){
- var req = org.argeo.ria.remote.RequestManager.getInstance().getRequest("stub.xml", "GET", "application/xml");
- req.addListener("completed", function(response){
- var executionModule = new org.argeo.slc.ria.module.ExecutionModule();
- executionModule.setXmlNode(response.getContent());
- this.debug(executionModule.getName());
- this.debug(qx.lang.Object.getLength(executionModule.getExecutionFlows()));
- this.debug(qx.lang.Object.getLength(executionModule.getExecutionSpecs()));
- }, this);
- req.send();
- /*
- this._amqClient.sendMessage("modulesManager.request", "", {
- "action":"getExecutionModuleDescriptor",
- "name" : "org.argeo.slc.demo.basic",
- "version" : "WHATEVER"
- });
- */
+ var selected = this.tree.getSelectedItem();
+ if(selected.classname == "org.argeo.ria.components.DynamicTreeFolder"){
+ selected.reload();
+ }
+ },
+ selectionChange : function(viewId, selection){
+ if(viewId != "form:tree") return;
+ if(!selection || selection.length != 1) return;
+ var item = selection[0];
+ if(!qx.Class.isSubClassOf(qx.Class.getByName(item.classname), qx.ui.tree.AbstractTreeItem)) return;
+ this.setEnabled(false);
+ if(qx.Class.isSubClassOf(qx.Class.getByName(item.classname), org.argeo.ria.components.DynamicTreeFolder)){
+ this.setEnabled(true);
+ }
},
command : null
}
@@ -99,6 +145,57 @@ qx.Class.define("org.argeo.slc.ria.NewLauncherApplet",
}
},
+ statics : {
+ flowLoader : function(folder){
+ var moduleData = folder.getUserData("moduleData");
+ var req = org.argeo.ria.remote.RequestManager.getInstance().getRequest("../argeo-ria-src/stub.xml", "GET", "application/xml");
+ req.addListener("completed", function(response){
+ var executionModule = new org.argeo.slc.ria.execution.Module();
+ executionModule.setXmlNode(response.getContent());
+ //
+ // ARTIFIALLY REPLACE MODULE NAME / VERSION, FOR TESTS PURPOSES
+ //
+ executionModule.setName(moduleData.name);
+ executionModule.setVersion(moduleData.version);
+ // END
+ var execFlows = executionModule.getExecutionFlows();
+ for(var key in execFlows){
+ var file = new qx.ui.tree.TreeFile(key);
+ file.setUserData("executionModule", executionModule);
+ file.setUserData("executionFlow", execFlows[key]);
+ folder.add(file);
+ }
+ folder.setLoaded(true);
+ });
+ req.send();
+ },
+
+ modulesLoader : function(folder){
+ // Call service, and parse
+ var mods = {
+ "Module 1":["ver1.1", "ver1.2", "ver1.3"],
+ "Module 2":["ver2.1", "ver2.2", "ver2.3", "ver2.4"],
+ "Module 3":["ver3.1", "ver3.2"]
+ };
+ var flowLoader = org.argeo.slc.ria.NewLauncherApplet.flowLoader;
+ for(var key in mods){
+ var moduleFolder = new qx.ui.tree.TreeFolder(key);
+ folder.add(moduleFolder);
+ for(var i=0;i