java.awt.event

Class InvocationEvent

public class InvocationEvent extends AWTEvent implements ActiveEvent

This event executes {@link Runnable#run()} of a target object when it is dispatched. This class is used by calls to invokeLater and invokeAndWait, so client code can use this fact to avoid writing special-casing AWTEventListener objects.

Since: 1.2

See Also: ActiveEvent invokeLater invokeAndWait AWTEventListener

UNKNOWN: updated to 1.4

Field Summary
protected booleancatchExceptions
This variable is set to true if exceptions are caught and stored in a variable during the call to run(), otherwise exceptions are ignored and propagate up.
static intINVOCATION_DEFAULT
This is the default id for this event type.
static intINVOCATION_FIRST
This is the first id in the range of event ids used by this class.
static intINVOCATION_LAST
This is the last id in the range of event ids used by this class.
protected Objectnotifier
This is the object to call notifyAll() on when the call to run() returns, or null if no object is to be notified.
protected Runnablerunnable
This is the Runnable object to call when dispatched.
Constructor Summary
InvocationEvent(Object source, Runnable runnable)
Initializes a new instance of InvocationEvent with the specified source and runnable.
InvocationEvent(Object source, Runnable runnable, Object notifier, boolean catchExceptions)
Initializes a new instance of InvocationEvent with the specified source, runnable, and notifier.
protected InvocationEvent(Object source, int id, Runnable runnable, Object notifier, boolean catchExceptions)
Initializes a new instance of InvocationEvent with the specified source, runnable, and notifier.
Method Summary
voiddispatch()
This method calls the run() method of the runnable, traps exceptions if instructed to do so, and calls notifyAll() on any notifier if all worked successfully.
ExceptiongetException()
This method returns the exception that occurred during the execution of the runnable, or null if not exception was thrown or exceptions were not caught.
ThrowablegetThrowable()
Returns a throwable caught while executing the Runnable's run() method.
longgetWhen()
Gets the timestamp of when this event was created.
StringparamString()
This method returns a string identifying this event.

Field Detail

catchExceptions

protected boolean catchExceptions
This variable is set to true if exceptions are caught and stored in a variable during the call to run(), otherwise exceptions are ignored and propagate up.

Serial: true to catch exceptions

INVOCATION_DEFAULT

public static final int INVOCATION_DEFAULT
This is the default id for this event type.

INVOCATION_FIRST

public static final int INVOCATION_FIRST
This is the first id in the range of event ids used by this class.

INVOCATION_LAST

public static final int INVOCATION_LAST
This is the last id in the range of event ids used by this class.

notifier

protected Object notifier
This is the object to call notifyAll() on when the call to run() returns, or null if no object is to be notified.

Serial: the object to notify

runnable

protected Runnable runnable
This is the Runnable object to call when dispatched.

Serial: the runnable to execute

Constructor Detail

InvocationEvent

public InvocationEvent(Object source, Runnable runnable)
Initializes a new instance of InvocationEvent with the specified source and runnable.

Parameters: source the source of the event runnable the Runnable object to invoke

Throws: IllegalArgumentException if source is null

InvocationEvent

public InvocationEvent(Object source, Runnable runnable, Object notifier, boolean catchExceptions)
Initializes a new instance of InvocationEvent with the specified source, runnable, and notifier. It will also catch exceptions if specified. If notifier is non-null, this will call notifyAll() on the object when the runnable is complete. If catchExceptions is true, this traps any exception in the runnable, otherwise it lets the exception propagate up the Event Dispatch thread.

Parameters: source the source of the event runnable the Runnable object to invoke notifier the object to notify, or null catchExceptions true to catch exceptions from the runnable

InvocationEvent

protected InvocationEvent(Object source, int id, Runnable runnable, Object notifier, boolean catchExceptions)
Initializes a new instance of InvocationEvent with the specified source, runnable, and notifier. It will also catch exceptions if specified. If notifier is non-null, this will call notifyAll() on the object when the runnable is complete. If catchExceptions is true, this traps any exception in the runnable, otherwise it lets the exception propagate up the Event Dispatch thread. Note that an invalid id leads to unspecified results.

Parameters: source the source of the event id the event id runnable the Runnable object to invoke notifier the object to notify, or null catchExceptions true to catch exceptions from the runnable

Method Detail

dispatch

public void dispatch()
This method calls the run() method of the runnable, traps exceptions if instructed to do so, and calls notifyAll() on any notifier if all worked successfully.

getException

public Exception getException()
This method returns the exception that occurred during the execution of the runnable, or null if not exception was thrown or exceptions were not caught.

Returns: the exception thrown by the runnable

getThrowable

public Throwable getThrowable()
Returns a throwable caught while executing the Runnable's run() method. Null if none was thrown or if this InvocationEvent doesn't catch throwables.

Returns: the caught Throwable

Since: 1.5

getWhen

public long getWhen()
Gets the timestamp of when this event was created.

Returns: the timestamp of this event

Since: 1.4

paramString

public String paramString()
This method returns a string identifying this event. This is formatted as: "INVOCATION_DEFAULT,runnable=" + runnable + ",notifier=" + notifier + ",catchExceptions=" + catchExceptions + ",when=" + getWhen().

Returns: a string identifying this event