Merge branch 'develop' into update_212_Dec_merge_with_21125_chamges
[jalview.git] / src / jalview / ws / jws2 / Jws2Client.java
index 09ec5c5..ab047d4 100644 (file)
@@ -1,6 +1,6 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
- * Copyright (C) 2014 The Jalview Authors
+ * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$)
+ * Copyright (C) $$Year-Rel$$ The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  */
 package jalview.ws.jws2;
 
+import jalview.gui.AlignFrame;
+import jalview.ws.api.ServiceWithParameters;
+import jalview.ws.params.ArgumentI;
+import jalview.ws.params.WsParamSetI;
 import java.util.List;
 
 import javax.swing.JMenu;
 
-import compbio.metadata.Argument;
-
-import jalview.gui.AlignFrame;
-import jalview.gui.Desktop;
-import jalview.gui.WebserviceInfo;
-import jalview.gui.WsJobParameters;
-import jalview.util.MessageManager;
-import jalview.ws.jws2.dm.JabaWsParamSet;
-import jalview.ws.jws2.jabaws2.Jws2Instance;
-import jalview.ws.params.WsParamSetI;
-
 /**
  * provides metadata for a jabaws2 service instance - resolves names, etc.
  * 
@@ -43,82 +36,19 @@ import jalview.ws.params.WsParamSetI;
  */
 public abstract class Jws2Client extends jalview.ws.WSClient
 {
-  protected AlignFrame alignFrame;
-
-  protected WsParamSetI preset;
-
-  protected List<Argument> paramset;
+  /**
+   * instantiate a new service client. preset and arguments are assumed to be
+   * valid for the service
+   * 
+   * @param _alignFrame
+   * @param preset
+   * @param arguments
+   */
 
   public Jws2Client(AlignFrame _alignFrame, WsParamSetI preset,
-          List<Argument> arguments)
+          List<ArgumentI> arguments)
   {
-    alignFrame = _alignFrame;
-    this.preset = preset;
-    if (preset != null)
-    {
-      if (!((preset instanceof JabaPreset) || preset instanceof JabaWsParamSet))
-      {
-        /*
-         * { this.preset = ((JabaPreset) preset).p; } else if (preset instanceof
-         * JabaWsParamSet) { List<Argument> newargs = new ArrayList<Argument>();
-         * JabaWsParamSet pset = ((JabaWsParamSet) preset); for (Option opt :
-         * pset.getjabaArguments()) { newargs.add(opt); } if (arguments != null
-         * && arguments.size() > 0) { // merge arguments with preset's own
-         * arguments. for (Argument opt : arguments) { newargs.add(opt); } }
-         * paramset = newargs; } else {
-         */
-        throw new Error(
-                "Implementation error: Can only instantiate Jaba parameter sets.");
-      }
-    }
-    else
-    {
-      // just provided with a bunch of arguments
-      this.paramset = arguments;
-    }
-  }
-
-  boolean processParams(Jws2Instance sh, boolean editParams)
-  {
-    return processParams(sh, editParams, false);
-  }
-
-  protected boolean processParams(Jws2Instance sh, boolean editParams,
-          boolean adjustingExisting)
-  {
-
-    if (editParams)
-    {
-      if (sh.paramStore == null)
-      {
-        sh.paramStore = new JabaParamStore(sh,
-                Desktop.getUserParameterStore());
-      }
-      WsJobParameters jobParams = (preset == null && paramset != null && paramset
-              .size() > 0) ? new WsJobParameters(null, sh, null, paramset)
-              : new WsJobParameters(sh, preset);
-      if (adjustingExisting)
-      {
-        jobParams.setName(MessageManager.getString("label.adjusting_parameters_for_calculation"));
-      }
-      if (!jobParams.showRunDialog())
-      {
-        return false;
-      }
-      WsParamSetI prset = jobParams.getPreset();
-      if (prset == null)
-      {
-        paramset = jobParams.isServiceDefaults() ? null : JabaParamStore
-                .getJabafromJwsArgs(jobParams.getJobParams());
-        this.preset = null;
-      }
-      else
-      {
-        this.preset = prset; // ((JabaPreset) prset).p;
-        paramset = null; // no user supplied parameters.
-      }
-    }
-    return true;
+    super(_alignFrame, preset, arguments);
 
   }
 
@@ -127,21 +57,6 @@ public abstract class Jws2Client extends jalview.ws.WSClient
     // anonymous constructor - used for headless method calls only
   }
 
-  protected WebserviceInfo setWebService(Jws2Instance serv, boolean b)
-  {
-    // serviceHandle = serv;
-    String serviceInstance = serv.action; // serv.service.getClass().getName();
-    WebServiceName = serv.serviceType;
-    WebServiceJobTitle = serv.getActionText();
-    WsURL = serv.hosturl;
-    if (!b)
-    {
-      return new WebserviceInfo(WebServiceJobTitle, WebServiceJobTitle
-              + " using service hosted at " + serv.hosturl + "\n"
-              + (serv.description != null ? serv.description : ""));
-    }
-    return null;
-  }
 
   /*
    * Jws2Instance serviceHandle; (non-Javadoc)
@@ -161,7 +76,9 @@ public abstract class Jws2Client extends jalview.ws.WSClient
    * @param service
    * @param alignFrame
    */
-  abstract void attachWSMenuEntry(JMenu wsmenu, final Jws2Instance service,
+  abstract void attachWSMenuEntry(JMenu wsmenu,
+          final ServiceWithParameters service,
           final AlignFrame alignFrame);
 
+
 }