JAL-3809 - Fixed param edit dialog for jalviewjs.
[jalview.git] / src / jalview / ws / jws2 / MsaWSClient.java
index e44381c..3123078 100644 (file)
@@ -110,42 +110,41 @@ public class MsaWSClient extends Jws2Client implements WSMenuEntryProviderI
           AlignFrame _alignFrame)
   {
     super(_alignFrame, preset, arguments);
-    if (!processParams(sh, editParams))
-    {
-      return;
-    }
-
-    if (!(sh instanceof JalviewServiceEndpointProviderI
-            && ((JalviewServiceEndpointProviderI) sh)
-                    .getEndpoint() instanceof MultipleSequenceAlignmentI))
-    {
-      // redundant at mo - but may change
-      JvOptionPane.showMessageDialog(Desktop.getDesktopPane(),
-              MessageManager.formatMessage(
-                      "label.service_called_is_not_msa_service",
-                      new String[]
-                      { sh.getName() }),
-              MessageManager.getString("label.internal_jalview_error"),
-              JvOptionPane.WARNING_MESSAGE);
-
-      return;
-    }
-    serviceHandle = sh;
-    server = (MultipleSequenceAlignmentI) ((JalviewServiceEndpointProviderI) sh)
-            .getEndpoint();
-    if ((wsInfo = setWebService(sh, false)) == null)
-    {
-      JvOptionPane.showMessageDialog(Desktop.getDesktopPane(), MessageManager
-              .formatMessage("label.msa_service_is_unknown", new String[]
-              { sh.getName() }),
-              MessageManager.getString("label.internal_jalview_error"),
-              JvOptionPane.WARNING_MESSAGE);
-
-      return;
-    }
-
-    startMsaWSClient(altitle, msa, submitGaps, preserveOrder, seqdataset);
-
+    processParams(sh, editParams).thenAccept((startJob) -> {
+      if (!startJob)
+        return;
+      
+      if (!(sh instanceof JalviewServiceEndpointProviderI
+              && ((JalviewServiceEndpointProviderI) sh)
+                      .getEndpoint() instanceof MultipleSequenceAlignmentI))
+      {
+        // redundant at mo - but may change
+        JvOptionPane.showMessageDialog(Desktop.getDesktopPane(),
+                MessageManager.formatMessage(
+                        "label.service_called_is_not_msa_service",
+                        new String[]
+                        { sh.getName() }),
+                MessageManager.getString("label.internal_jalview_error"),
+                JvOptionPane.WARNING_MESSAGE);
+  
+        return;
+      }
+      serviceHandle = sh;
+      server = (MultipleSequenceAlignmentI) ((JalviewServiceEndpointProviderI) sh)
+              .getEndpoint();
+      if ((wsInfo = setWebService(sh, false)) == null)
+      {
+        JvOptionPane.showMessageDialog(Desktop.getDesktopPane(), MessageManager
+                .formatMessage("label.msa_service_is_unknown", new String[]
+                { sh.getName() }),
+                MessageManager.getString("label.internal_jalview_error"),
+                JvOptionPane.WARNING_MESSAGE);
+  
+        return;
+      }
+  
+      startMsaWSClient(altitle, msa, submitGaps, preserveOrder, seqdataset);
+    });
   }
 
   public MsaWSClient()