Class SafeRunnable

java.lang.Object
org.eclipse.jface.util.SafeRunnable
All Implemented Interfaces:
ISafeRunnable
Direct Known Subclasses:
EarlyStartupRunnable

public abstract class SafeRunnable extends Object implements ISafeRunnable
Implements a default implementation of ISafeRunnable. The default implementation of handleException opens a dialog to show any errors as they accumulate.

This may be executed on any thread.

  • Constructor Details

    • SafeRunnable

      public SafeRunnable()
      Creates a new instance of SafeRunnable with a default error message.
    • SafeRunnable

      public SafeRunnable(String message)
      Creates a new instance of SafeRunnable with the given error message.
      Parameters:
      message - the error message to use
  • Method Details

    • handleException

      public void handleException(Throwable e)
      Description copied from interface: ISafeRunnable
      Handles an exception thrown by this runnable's ISafeRunnable.run() method. The processing done here should be specific to the particular use case for this runnable. Generalized exception processing, including logging in the Platform's log, is done by the SafeRunner.

      All exceptions from the ISafeRunnable.run() method are passed to this method, along with certain Error types that are typically caused by programming errors in the untrusted code being run.

      Specified by:
      handleException in interface ISafeRunnable
      Parameters:
      e - an exception which occurred during processing the body of this runnable (i.e., in ISafeRunnable.run())
      See Also:
    • getIgnoreErrors

      @Deprecated public static boolean getIgnoreErrors(boolean flag)
      Deprecated.
      use getIgnoreErrors()
      Flag to avoid interactive error dialogs during automated testing.
      Parameters:
      flag - unused
      Returns:
      true if errors should be ignored
    • getIgnoreErrors

      public static boolean getIgnoreErrors()
      Flag to avoid interactive error dialogs during automated testing.
      Returns:
      true if errors should be ignored
      Since:
      3.0
    • setIgnoreErrors

      public static void setIgnoreErrors(boolean flag)
      Flag to avoid interactive error dialogs during automated testing.
      Parameters:
      flag - set to true if errors should be ignored
    • getRunner

      public static ISafeRunnableRunner getRunner()
      Returns the safe runnable runner.
      Returns:
      the safe runnable runner
      Since:
      3.1
    • setRunner

      public static void setRunner(ISafeRunnableRunner runner)
      Sets the safe runnable runner.
      Parameters:
      runner - the runner to set, or null to reset to the default runner
      Since:
      3.1
    • run

      public static void run(ISafeRunnable runnable)
      Runs the given safe runnable using the safe runnable runner. This is a convenience method, equivalent to: SafeRunnable.getRunner().run(runnable).
      Parameters:
      runnable - the runnable to run
      Since:
      3.1