JAL-3070 use ArgumentI in all public constructors, convert to service specific argume...
[jalview.git] / src / jalview / ws / jws2 / SequenceAnnotationWSClient.java
index 77a7a67..eb08848 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.
  * 
@@ -21,7 +21,6 @@
 package jalview.ws.jws2;
 
 import jalview.api.AlignCalcWorkerI;
-import jalview.bin.Cache;
 import jalview.gui.AlignFrame;
 import jalview.gui.Desktop;
 import jalview.gui.JvSwingUtils;
@@ -35,12 +34,8 @@ import java.awt.event.ActionEvent;
 import java.awt.event.ActionListener;
 import java.util.List;
 
-import javax.swing.JCheckBoxMenuItem;
 import javax.swing.JMenu;
 import javax.swing.JMenuItem;
-import javax.swing.JOptionPane;
-import javax.swing.event.MenuEvent;
-import javax.swing.event.MenuListener;
 
 /**
  * @author jprocter
@@ -72,9 +67,9 @@ public class SequenceAnnotationWSClient extends Jws2Client
     // dan changed! dan test. comment out if conditional
     // if (alignFrame.getViewport().getAlignment().isNucleotide())
     // {
-    // JOptionPane.showMessageDialog(Desktop.desktop, sh.serviceType
+    // JvOptionPane.showMessageDialog(Desktop.desktop, sh.serviceType
     // + " can only be used\nfor amino acid alignments.",
-    // "Wrong type of sequences!", JOptionPane.WARNING_MESSAGE);
+    // "Wrong type of sequences!", JvOptionPane.WARNING_MESSAGE);
     // return;
     //
     // }
@@ -99,14 +94,16 @@ public class SequenceAnnotationWSClient extends Jws2Client
         {
           worker = (AbstractJabaCalcWorker) (clientClass
                   .getConstructor(new Class[]
-                  { Jws2Instance.class, AlignFrame.class,
-                      WsParamSetI.class, List.class })
+                  { Jws2Instance.class, AlignFrame.class, WsParamSetI.class,
+                      List.class })
                   .newInstance(new Object[]
                   { sh, alignFrame, this.preset, paramset }));
         } catch (Exception x)
         {
           x.printStackTrace();
-          throw new Error("Implementation error", x);
+          throw new Error(
+                  MessageManager.getString("error.implementation_error"),
+                  x);
         }
         alignFrame.getViewport().getCalcManager().registerWorker(worker);
         alignFrame.getViewport().getCalcManager().startWorker(worker);
@@ -127,11 +124,11 @@ public class SequenceAnnotationWSClient extends Jws2Client
         }
         // reinstate worker if it was blacklisted (might have happened due to
         // invalid parameters)
-        alignFrame.getViewport().getCalcManager().workerMayRun(worker);
+        alignFrame.getViewport().getCalcManager().enableWorker(worker);
         worker.updateParameters(this.preset, paramset);
       }
     }
-    if (sh.action.toLowerCase().contains("disorder"))
+    if (sh.getAction().toLowerCase().contains("disorder"))
     {
       // build IUPred style client. take sequences, returns annotation per
       // sequence.
@@ -140,18 +137,15 @@ public class SequenceAnnotationWSClient extends Jws2Client
         return;
       }
 
-      alignFrame
-              .getViewport()
-              .getCalcManager()
-              .startWorker(
-                      new AADisorderClient(sh, alignFrame, preset, paramset));
+      alignFrame.getViewport().getCalcManager().startWorker(
+              new AADisorderClient(sh, alignFrame, preset, paramset));
     }
   }
 
   public SequenceAnnotationWSClient(AAConSettings fave,
           AlignFrame alignFrame, boolean b)
   {
-    super(alignFrame, fave.getPreset(), fave.getJobArgset());
+    super(alignFrame, fave.getPreset(), fave.getArgumentSet());
     initSequenceAnnotationWSClient(fave.getService(), alignFrame,
             fave.getPreset(), b);
   }
@@ -162,6 +156,7 @@ public class SequenceAnnotationWSClient extends Jws2Client
    * @see jalview.ws.jws2.Jws2Client#attachWSMenuEntry(javax.swing.JMenu,
    * jalview.ws.jws2.jabaws2.Jws2Instance, jalview.gui.AlignFrame)
    */
+  @Override
   public void attachWSMenuEntry(JMenu wsmenu, final Jws2Instance service,
           final AlignFrame alignFrame)
   {
@@ -172,8 +167,8 @@ public class SequenceAnnotationWSClient extends Jws2Client
     }
     boolean hasparams = service.hasParameters();
     // Assume name ends in WS
-    String calcName = service.serviceType.substring(0,
-            service.serviceType.length() - 2);
+    String calcName = service.getName().substring(0,
+            service.getName().length() - 2);
 
     JMenuItem annotservice = new JMenuItem(MessageManager.formatMessage(
             "label.calcname_with_default_settings", new String[]
@@ -194,12 +189,12 @@ public class SequenceAnnotationWSClient extends Jws2Client
       // arguments
       annotservice = new JMenuItem(
               MessageManager.getString("label.edit_settings_and_run"));
-      annotservice
-              .setToolTipText(MessageManager
-                      .getString("label.view_and_change_parameters_before_running_calculation"));
+      annotservice.setToolTipText(MessageManager.getString(
+              "label.view_and_change_parameters_before_running_calculation"));
 
       annotservice.addActionListener(new ActionListener()
       {
+        @Override
         public void actionPerformed(ActionEvent e)
         {
           new SequenceAnnotationWSClient(service, alignFrame, null, true);
@@ -209,18 +204,22 @@ public class SequenceAnnotationWSClient extends Jws2Client
       List<WsParamSetI> presets = service.getParamStore().getPresets();
       if (presets != null && presets.size() > 0)
       {
-        JMenu presetlist = new JMenu(MessageManager.formatMessage("label.run_with_preset", new String[]{calcName}));
+        JMenu presetlist = new JMenu(MessageManager
+                .formatMessage("label.run_with_preset", new String[]
+                { calcName }));
 
         for (final WsParamSetI preset : presets)
         {
           final JMenuItem methodR = new JMenuItem(preset.getName());
-          methodR.setToolTipText("<html><p>"
-                  + JvSwingUtils.wrapTooltip("<strong>"
-                          + (preset.isModifiable() ? MessageManager.getString("label.user_preset")
-                                  : MessageManager.getString("label.service_preset")) + "</strong><br/>"
-                          + preset.getDescription() + "</p>") + "</html>");
+          methodR.setToolTipText(JvSwingUtils.wrapTooltip(true, "<strong>"
+                  + (preset.isModifiable()
+                          ? MessageManager.getString("label.user_preset")
+                          : MessageManager
+                                  .getString("label.service_preset"))
+                  + "</strong><br/>" + preset.getDescription()));
           methodR.addActionListener(new ActionListener()
           {
+            @Override
             public void actionPerformed(ActionEvent e)
             {
               new SequenceAnnotationWSClient(service, alignFrame, preset,
@@ -249,7 +248,10 @@ public class SequenceAnnotationWSClient extends Jws2Client
             Desktop.instance.showUrl(service.docUrl);
           }
         });
-        annotservice.setToolTipText(JvSwingUtils.wrapTooltip(MessageManager.formatMessage("label.view_service_doc_url", new String[]{service.docUrl,service.docUrl})));
+        annotservice.setToolTipText(
+                JvSwingUtils.wrapTooltip(true, MessageManager.formatMessage(
+                        "label.view_service_doc_url", new String[]
+                        { service.docUrl, service.docUrl })));
         wsmenu.add(annotservice);
       }
     }