クラスInvocationEvent
- すべての実装されたインタフェース:
ActiveEvent,Serializable
Runnable 上でrun()メソッドを実行するイベントです。 このクラスは、新しいクラスを宣言してdispatch()を定義する代わりに、ActiveEventの参照実装として使用できます。
このクラスのインスタンスは、invokeLaterおよびinvokeAndWaitの呼出しによってEventQueueに置かれます。 これによりクライアントのコードでは、特別な場合のコードを書くことなくAWTEventListenerオブジェクト内に、invokeLater およびinvokeAndWaitに代わる関数を記述できます。
特定のInvocationEventインスタンスのidパラメータがINVOCATION_FIRSTからINVOCATION_LASTまでの範囲にない場合に、未指定の動作が発生します。
- 導入されたバージョン:
- 1.2
- 関連項目:
-
フィールドのサマリー
フィールド修飾子と型フィールド説明protected booleandispatch()がThrowableをキャッチして例外インスタンス変数に格納する場合は、trueに設定します。static final intすべてのInvocationEventに対するデフォルトIDです。static final int呼出しイベントIDの範囲の最初の整数IDをマスクします。static final int呼出しイベントIDの範囲の最後の整数IDをマスクします。protected ObjectRunnable.run()メソッドの復帰後または例外のスロー後、あるいはイベントの破棄後、notifyAll()メソッドがただちに呼び出されるObjectです(nullの場合もあります)。protected Runnablerun()メソッドが呼び出されるRunnableです。クラスjava.awt.AWTEventで宣言されたフィールド
ACTION_EVENT_MASK, ADJUSTMENT_EVENT_MASK, COMPONENT_EVENT_MASK, consumed, CONTAINER_EVENT_MASK, FOCUS_EVENT_MASK, HIERARCHY_BOUNDS_EVENT_MASK, HIERARCHY_EVENT_MASK, id, INPUT_METHOD_EVENT_MASK, INVOCATION_EVENT_MASK, ITEM_EVENT_MASK, KEY_EVENT_MASK, MOUSE_EVENT_MASK, MOUSE_MOTION_EVENT_MASK, MOUSE_WHEEL_EVENT_MASK, PAINT_EVENT_MASK, RESERVED_ID_MAX, TEXT_EVENT_MASK, WINDOW_EVENT_MASK, WINDOW_FOCUS_EVENT_MASK, WINDOW_STATE_EVENT_MASKクラスjava.util.EventObjectで宣言されたフィールド
source -
コンストラクタのサマリー
コンストラクタ修飾子コンストラクタ説明protectedInvocationEvent(Object source, int id, Runnable runnable, Object notifier, boolean catchThrowables) 指定されたソースとID (ディスパッチされたときにrunnableのrun()メソッドを実行します)でInvocationEventを構築します。InvocationEvent(Object source, Runnable runnable) 指定されたソース(ディスパッチされたときにrunnableのrun()メソッドを実行します)でInvocationEventを構築します。InvocationEvent(Object source, Runnable runnable, Object notifier, boolean catchThrowables) 指定されたソース(ディスパッチされたときにrunnableのrun()メソッドを実行します)でInvocationEventを構築します。InvocationEvent(Object source, Runnable runnable, Runnable listener, boolean catchThrowables) 指定されたソース(ディスパッチされたときにrunnableのrun()メソッドを実行します)でInvocationEventを構築します。 -
メソッドのサマリー
修飾子と型メソッド説明voiddispatch()Runnableのrun()メソッドを実行し、run()が戻るか例外をスローしたときにnotifier (ある場合)を通知します。Runnableのrun()メソッド実行時にキャッチされたExceptionを返します。Runnableのrun()メソッド実行時にキャッチされたThrowableを返します。longgetWhen()このイベントが発生した時点のタイムスタンプを返します。booleanイベントがディスパッチされるか、ディスパッチ中に例外がスローされた場合は、trueを返し、それ以外の場合はfalseを返します。このイベントを特定するパラメータ文字列を返します。クラスjava.util.EventObjectで宣言されたメソッド
getSource
-
フィールド詳細
-
INVOCATION_FIRST
public static final int INVOCATION_FIRST呼出しイベントIDの範囲の最初の整数IDをマスクします。- 関連項目:
-
INVOCATION_DEFAULT
public static final int INVOCATION_DEFAULTすべてのInvocationEventに対するデフォルトIDです。- 関連項目:
-
INVOCATION_LAST
public static final int INVOCATION_LAST呼出しイベントIDの範囲の最後の整数IDをマスクします。- 関連項目:
-
runnable
protected Runnable runnablerun()メソッドが呼び出されるRunnableです。 -
notifier
protected volatile Object notifierRunnable.run()メソッドの復帰後または例外のスロー後、あるいはイベントの破棄後、notifyAll()メソッドがただちに呼び出されるObjectです(nullの場合もあります)。- 関連項目:
-
catchExceptions
protected boolean catchExceptionsdispatch()がThrowableをキャッチして例外インスタンス変数に格納する場合は、trueに設定します。 falseの場合は、ThrowableはEventDispatchThreadのディスパッチ・ループまで伝達されます。
-
-
コンストラクタの詳細
-
InvocationEvent
指定されたソース(ディスパッチされたときにrunnableのrun()メソッドを実行します)でInvocationEventを構築します。これは簡易コンストラクタです。
InvocationEvent(source, runnable)という形式の呼び出しは、InvocationEvent(source, runnable, null, false)の呼び出しとまったく同じように動作します。このメソッドは
sourceがnullの場合にIllegalArgumentExceptionをスローします。- パラメータ:
source- イベントを発生させたObjectrunnable-run()メソッドが実行されるRunnable- スロー:
IllegalArgumentException-sourceがnullである場合- 関連項目:
-
InvocationEvent
指定されたソース(ディスパッチされたときにrunnableのrun()メソッドを実行します)でInvocationEventを構築します。 notifierがnullでない場合は、run()が戻ったあとまたは例外のスロー後、ただちにそこでnotifyAll()が呼び出されます。InvocationEvent(source, runnable, notifier, catchThrowables)という形式の呼び出しは、InvocationEvent(source, InvocationEvent.INVOCATION_DEFAULT, runnable, notifier, catchThrowables)の呼び出しとまったく同じように動作します。このメソッドは
sourceがnullの場合にIllegalArgumentExceptionをスローします。- パラメータ:
source- イベントを発生させたObjectrunnable-run()メソッドが実行されるRunnablenotifier-Runnable.runの復帰後または例外のスロー後、あるいはイベントの破棄後にnotifyAllメソッドが呼び出されるObjectcatchThrowables-Runnableのrun()メソッドの実行時に、dispatchによりThrowableがキャッチされるか、これらのThrowableがEventDispatchThreadのディスパッチ・ループまで伝達されるかを指定する- スロー:
IllegalArgumentException-sourceがnullである場合- 関連項目:
-
InvocationEvent
public InvocationEvent(Object source, Runnable runnable, Runnable listener, boolean catchThrowables) 指定されたソース(ディスパッチされたときにrunnableのrun()メソッドを実行します)でInvocationEventを構築します。 listenerがnullでない場合は、runの復帰後または例外のスロー後、あるいはイベントの破棄後、ただちにそこでlistener.run()が呼び出されます。このメソッドは
sourceがnullの場合にIllegalArgumentExceptionをスローします。- パラメータ:
source- イベントを発生させたObjectrunnable-run()メソッドが実行されるRunnablelistener-InvocationEventがディスパッチまたは廃棄された後にrun()メソッドがコールされるRunnablecatchThrowables-Runnableのrun()メソッドの実行時に、dispatchによりThrowableがキャッチされるか、これらのThrowableがEventDispatchThreadのディスパッチ・ループまで伝達されるかを指定する- スロー:
IllegalArgumentException-sourceがnullである場合
-
InvocationEvent
protected InvocationEvent(Object source, int id, Runnable runnable, Object notifier, boolean catchThrowables) 指定されたソースとID (ディスパッチされたときにrunnableのrun()メソッドを実行します)でInvocationEventを構築します。 notifierがnullでない場合は、run()が戻ったあとまたは例外のスロー後、ただちにそこでnotifyAll()が呼び出されます。このメソッドは
sourceがnullの場合にIllegalArgumentExceptionをスローします。- パラメータ:
source- イベントを発生させたObjectid- イベントのタイプを示す整数。 許容される値については、InvocationEventのクラスの説明を参照してください。runnable-run()メソッドが実行されるRunnablenotifier-Runnable.runの復帰後または例外のスロー後、あるいはイベントの破棄後にnotifyAllメソッドが呼び出されるObjectcatchThrowables-Runnableのrun()メソッドの実行時に、dispatchによりThrowableがキャッチされるか、これらのThrowableがEventDispatchThreadのディスパッチ・ループまで伝達されるかを指定する- スロー:
IllegalArgumentException-sourceがnullである場合- 関連項目:
-
-
メソッドの詳細
-
dispatch
public void dispatch()Runnableのrun()メソッドを実行し、run()が戻るか例外をスローしたときにnotifier (ある場合)を通知します。- 定義:
dispatch、インタフェースActiveEvent- 関連項目:
-
getException
public Exception getException()Runnableのrun()メソッド実行時にキャッチされたExceptionを返します。- 戻り値:
- Exceptionがスローされた場合はそのExceptionに対する参照。Exceptionがスローされなかった場合、またはこのInvocationEventが例外をキャッチしなかった場合はnull
-
getThrowable
public Throwable getThrowable()Runnableのrun()メソッド実行時にキャッチされたThrowableを返します。- 戻り値:
- Throwableがスローされた場合はそのThrowableに対する参照。Throwableがスローされなかった場合、またはこのInvocationEventがThrowableをキャッチしなかった場合はnull
- 導入されたバージョン:
- 1.5
-
getWhen
public long getWhen()このイベントが発生した時点のタイムスタンプを返します。- 戻り値:
- このイベントのタイムスタンプ
- 導入されたバージョン:
- 1.4
-
isDispatched
public boolean isDispatched()イベントがディスパッチされるか、ディスパッチ中に例外がスローされた場合は、trueを返し、それ以外の場合はfalseを返します。 このメソッドは、notifier.wait()メソッドを呼び出す待機中スレッドによって呼び出すようにしてください。 見せかけの復帰が可能なため(Object.wait()で説明)、イベントを確実にディスパッチするには、このメソッドを待機中ループで使用するようにしてください。while (!event.isDispatched()) { notifier.wait(); }イベントをディスパッチせずに待機中スレッドが復帰すると、isDispatched()メソッドによってfalseが返され、whileループが再度実行されるため、復帰したスレッドが待機モードに戻ります。待機中スレッドが
notifier.wait()メソッドに入る前にnotifier.notifyAll()が発生すると、whileループによって待機中スレッドがnotifier.wait()メソッドに確実に入らなくなります。 それ以外の場合、待機中スレッドは待機状態から復帰しません。- 戻り値:
- イベントがディスパッチされるか、ディスパッチ中に例外がスローされた場合は、
true、それ以外の場合はfalse - 導入されたバージョン:
- 1.7
- 関連項目:
-
paramString
public String paramString()このイベントを特定するパラメータ文字列を返します。 このメソッドは、イベント・ログの作成およびデバッグに便利です。- オーバーライド:
paramString、クラスAWTEvent- 戻り値:
- イベントを特定する文字列とその属性
-