JAL-4186 Turn JvOptionPane Callable<Void> handlers back into Runnable for jalviewjs...
[jalview.git] / src / jalview / gui / QuitHandler.java
index 9a44306..5d628ff 100644 (file)
@@ -2,7 +2,6 @@ package jalview.gui;
 
 import java.io.File;
 import java.util.List;
-import java.util.concurrent.Callable;
 import java.util.concurrent.CompletableFuture;
 import java.util.concurrent.ExecutionException;
 import java.util.concurrent.ExecutorService;
@@ -58,21 +57,18 @@ public class QuitHandler
   public static QResponse setQuitHandler()
   {
     FlatDesktop.setQuitHandler(response -> {
-      Callable<Void> performQuit = () -> {
+      Runnable performQuit = () -> {
         response.performQuit();
         setResponse(QResponse.QUIT);
-        return null;
       };
-      Callable<Void> performForceQuit = () -> {
+      Runnable performForceQuit = () -> {
         response.performQuit();
         setResponse(QResponse.FORCE_QUIT);
-        return null;
       };
-      Callable<Void> cancelQuit = () -> {
+      Runnable cancelQuit = () -> {
         response.cancelQuit();
         // reset
         setResponse(QResponse.NULL);
-        return null;
       };
       getQuitResponse(true, performQuit, performForceQuit, cancelQuit);
     });
@@ -93,25 +89,22 @@ public class QuitHandler
     return gotQuitResponse;
   }
 
-  public static final Callable<Void> defaultCancelQuit = () -> {
+  public static final Runnable defaultCancelQuit = () -> {
     Console.debug("QuitHandler: (default) Quit action CANCELLED by user");
     // reset
     setResponse(QResponse.CANCEL_QUIT);
-    return null;
   };
 
-  public static final Callable<Void> defaultOkQuit = () -> {
+  public static final Runnable defaultOkQuit = () -> {
     Console.debug("QuitHandler: (default) Quit action CONFIRMED by user");
     setResponse(QResponse.QUIT);
-    return null;
   };
 
-  public static final Callable<Void> defaultForceQuit = () -> {
+  public static final Runnable defaultForceQuit = () -> {
     Console.debug("QuitHandler: (default) Quit action FORCED by user");
     // note that shutdown hook will not be run
     Runtime.getRuntime().halt(0);
     setResponse(QResponse.FORCE_QUIT); // this line never reached!
-    return null;
   };
 
   public static QResponse getQuitResponse(boolean ui)
@@ -120,8 +113,8 @@ public class QuitHandler
             defaultCancelQuit);
   }
 
-  public static QResponse getQuitResponse(boolean ui, Callable<Void> okQuit,
-          Callable<Void> forceQuit, Callable<Void> cancelQuit)
+  public static QResponse getQuitResponse(boolean ui, Runnable okQuit,
+          Runnable forceQuit, Runnable cancelQuit)
   {
     QResponse got = gotQuitResponse();
     if (got != QResponse.NULL && got != QResponse.CANCEL_QUIT)
@@ -169,7 +162,8 @@ public class QuitHandler
       qd.showDialogOnTopAsync(
               new StringBuilder(
                       MessageManager.getString("label.quit_jalview"))
-                      .append("\n").append(messageString).toString(),
+                              .append("\n").append(messageString)
+                              .toString(),
               MessageManager.getString("action.quit"),
               JOptionPane.YES_NO_OPTION, JOptionPane.QUESTION_MESSAGE, null,
               new Object[]
@@ -239,7 +233,7 @@ public class QuitHandler
       }
     }
 
-    Callable<Void> next = null;
+    Runnable next = null;
     switch (gotQuitResponse())
     {
     case QUIT:
@@ -280,9 +274,8 @@ public class QuitHandler
     return gotQuitResponse();
   }
 
-  private static QResponse waitQuit(boolean interactive,
-          Callable<Void> okQuit, Callable<Void> forceQuit,
-          Callable<Void> cancelQuit)
+  private static QResponse waitQuit(boolean interactive, Runnable okQuit,
+          Runnable forceQuit, Runnable cancelQuit)
   {
     // check for saves in progress
     if (!BackupFiles.hasSavesInProgress())