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