Class ErrorUtils

java.lang.Object
net.sf.colossus.util.ErrorUtils

public class ErrorUtils extends Object
Small helper methods to deal with Exceptions, how to get them into String-format and display them to the user etc.

Displaying of the message dialog is also provided here, so that otherwise non-GUI classes have a simple way to show a dialog, without need to worry about being headless etc.
  • Field Details

    • LOGGER

      private static final Logger LOGGER
    • errorDuringFunctionalTest

      private static List<String> errorDuringFunctionalTest
  • Constructor Details

    • ErrorUtils

      public ErrorUtils()
  • Method Details

    • makeStackTraceString

      public static String makeStackTraceString(Throwable e)
      Query the stacktrace items from an exception, and put them nicely into a single string.
      Parameters:
      e - An exception that was caught somewhere
      Returns:
      A string object containing all the stack trace lines.
    • clearErrorDuringFunctionalTest

      public static void clearErrorDuringFunctionalTest()
    • setErrorDuringFunctionalTest

      public static void setErrorDuringFunctionalTest(String reason) throws IllegalArgumentException
      Parameters:
      reason -
      Throws:
      IllegalArgumentException
    • getErrorDuringFunctionalTest

      public static String getErrorDuringFunctionalTest()
    • checkErrorDuringFunctionalTest

      public static boolean checkErrorDuringFunctionalTest()
    • exitIfStresstest

      private static void exitIfStresstest()
      During stress-testing, don't bother to show message, instead exit immediately:
    • showExceptionDialog

      public static void showExceptionDialog(JFrame frame, String message, String title, boolean error)
      Show display an error/warning in an JOptionPage message dialog, typically for the situation that an exception had occured. Creates a special frame for the dialog, if given frame is null. If called during stresstest, do System.exit(1) with explanatory message to logfile. If headless, display is skipped.
      Parameters:
      frame - A frame to be used as parent for the dialog. If null, an own frame is created for that purpose.
      message - Message to be displayed in the dialog window
      title - Title of the dialog window
      error - If true, type is error message, for false only warning
    • showErrorDialog

      public static void showErrorDialog(JFrame frame, String title, String message)
      Show display an error/warning in an JOptionPage message dialog, but this one here typically NOT for the situation that an exception had occured. Does NOT copy anything to clipboard. Creates a special frame for the dialog, if given frame is null. If called during stresstest, do System.exit(1) with explanatory message to logfile. If headless, display is skipped.
      Parameters:
      frame - A frame to be used as parent for the dialog. If null, an own frame is created for that purpose.
      title - Title of the dialog window
      message - Message to be displayed in the dialog window
    • showTheDialog

      private static void showTheDialog(JFrame frame, String frameTitle, String title, String message, boolean error)
      Show the dialog box with given parameters; if necessary (no parent frame given), create own dummy frame to avoid that the message dialog is hidden behind other GUI frames/dialogs, and is not even visible in the task bar.
      Parameters:
      frame - A parent frame to use, might be null
      frameTitle - The title to use for the frame to create
      title - The title for the message dialog
      message - The actual message to show in the dialog
      error - Type of message (true for error, false for warning)
    • makeDummyErrorFrame

      private static JFrame makeDummyErrorFrame(String frameTitle)
      Creates a JFrame object which can be used as parent for a dialog; the frame is centered and contains a text telling that it is a dummy frame just for that purpose that one does not miss the message dialog.
    • copyToClipboard

      public static boolean copyToClipboard(String message)