]> git.argeo.org Git - gpl/argeo-slc.git/blobdiff - org.argeo.slc.client.ui/src/org/argeo/slc/client/ui/commands/UpdateModule.java
Clarify SLC project structure.
[gpl/argeo-slc.git] / org.argeo.slc.client.ui / src / org / argeo / slc / client / ui / commands / UpdateModule.java
diff --git a/org.argeo.slc.client.ui/src/org/argeo/slc/client/ui/commands/UpdateModule.java b/org.argeo.slc.client.ui/src/org/argeo/slc/client/ui/commands/UpdateModule.java
deleted file mode 100644 (file)
index 7cf8509..0000000
+++ /dev/null
@@ -1,112 +0,0 @@
-package org.argeo.slc.client.ui.commands;
-
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.Map;
-
-import javax.jcr.Node;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.argeo.slc.BasicNameVersion;
-import org.argeo.slc.NameVersion;
-import org.argeo.slc.SlcException;
-import org.argeo.slc.SlcNames;
-import org.argeo.slc.SlcTypes;
-import org.argeo.slc.deploy.ModulesManager;
-import org.eclipse.core.commands.AbstractHandler;
-import org.eclipse.core.commands.ExecutionEvent;
-import org.eclipse.core.commands.ExecutionException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.runtime.jobs.Job;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.ui.handlers.HandlerUtil;
-
-/** Deletes one or many results */
-public class UpdateModule extends AbstractHandler {
-       private final static Log log = LogFactory.getLog(UpdateModule.class);
-
-       private ModulesManager modulesManager;
-
-       public Object execute(ExecutionEvent event) throws ExecutionException {
-               final ISelection selection = HandlerUtil
-                               .getActiveWorkbenchWindow(event).getActivePage().getSelection();
-               if (selection != null && selection instanceof IStructuredSelection) {
-                       UpdateJob job = new UpdateJob(selection);
-                       job.setUser(true);
-                       job.schedule();
-               }
-               return null;
-       }
-
-       private class UpdateJob extends Job {
-               private final IStructuredSelection selection;
-
-               public UpdateJob(ISelection selection) {
-                       super("Update modules");
-                       this.selection = ((IStructuredSelection) selection);
-               }
-
-               @Override
-               protected IStatus run(IProgressMonitor monitor) {
-                       Iterator<?> it = selection.iterator();
-                       Object obj = null;
-                       try {
-                               Map<String, Node> nodes = new HashMap<String, Node>();
-                               nodes: while (it.hasNext()) {
-                                       obj = it.next();
-                                       if (obj instanceof Node) {
-                                               Node node = (Node) obj;
-                                               Node executionModuleNode = null;
-                                               while (executionModuleNode == null) {
-                                                       if (node.isNodeType(SlcTypes.SLC_EXECUTION_MODULE)) {
-                                                               executionModuleNode = node;
-                                                       }
-                                                       node = node.getParent();
-                                                       if (node.getPath().equals("/"))// root
-                                                               continue nodes;
-                                               }
-
-                                               if (!nodes.containsKey(executionModuleNode.getPath()))
-                                                       nodes.put(executionModuleNode.getPath(),
-                                                                       executionModuleNode);
-                                       }
-                               }
-
-                               monitor.beginTask("Update modules", nodes.size());
-                               for (Node executionModuleNode : nodes.values()) {
-                                       monitor.subTask("Update " + executionModuleNode.getName());
-                                       NameVersion nameVersion = new BasicNameVersion(
-                                                       executionModuleNode.getProperty(SlcNames.SLC_NAME)
-                                                                       .getString(), executionModuleNode
-                                                                       .getProperty(SlcNames.SLC_VERSION)
-                                                                       .getString());
-                                       modulesManager.upgrade(nameVersion);
-                                       monitor.worked(1);
-                                       log.info("Module " + nameVersion + " updated");
-                                       if (monitor.isCanceled())
-                                               return Status.CANCEL_STATUS;
-                               }
-                               return Status.OK_STATUS;
-                       } catch (Exception e) {
-                               throw new SlcException("Cannot update module " + obj, e);
-                               // return Status.CANCEL_STATUS;
-                       }
-               }
-
-               @Override
-               protected void canceling() {
-                       getThread().interrupt();
-                       super.canceling();
-               }
-
-       }
-
-       public void setModulesManager(ModulesManager modulesManager) {
-               this.modulesManager = modulesManager;
-       }
-
-}