java.lang.Object
org.pushingpixels.substance.internal.contrib.randelshofer.quaqua.util.Worker
All Implemented Interfaces:
Runnable

public abstract class Worker extends Object implements Runnable
This is an abstract class that you subclass to perform GUI-related work in a dedicated event dispatcher.

This class is similar to SwingWorker but less complex. Like a SwingWorker it can run using an an internal worker thread but it can also be like a Runnable object.

  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    abstract Object
    Compute the value to be returned by the get method.
    abstract void
    Called on the event dispatching thread (not on the worker thread) after the construct method has returned.
    protected Object
    Get the value produced by the worker thread, or null if it hasn't been constructed yet.
    final void
    run()
    Calls #construct on the current thread and invokes #finished on the AWT event dispatcher thread.
    void
    Starts the Worker on an internal worker thread.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • Worker

      public Worker()
  • Method Details

    • run

      public final void run()
      Calls #construct on the current thread and invokes #finished on the AWT event dispatcher thread.
      Specified by:
      run in interface Runnable
    • construct

      public abstract Object construct()
      Compute the value to be returned by the get method.
    • finished

      public abstract void finished(Object value)
      Called on the event dispatching thread (not on the worker thread) after the construct method has returned.
      Parameters:
      value - The return value of the construct method.
    • getValue

      protected Object getValue()
      Get the value produced by the worker thread, or null if it hasn't been constructed yet.
    • start

      public void start()
      Starts the Worker on an internal worker thread.