クラスInvocationEvent

すべての実装されたインタフェース:
ActiveEvent, Serializable

public class InvocationEvent extends AWTEvent implements ActiveEvent
AWTイベント・ディスパッチャ・スレッドによってディスパッチされたときに、Runnable 上でrun()メソッドを実行するイベントです。 このクラスは、新しいクラスを宣言してdispatch()を定義する代わりに、ActiveEventの参照実装として使用できます。

このクラスのインスタンスは、invokeLaterおよびinvokeAndWaitの呼出しによってEventQueueに置かれます。 これによりクライアントのコードでは、特別な場合のコードを書くことなくAWTEventListenerオブジェクト内に、invokeLater およびinvokeAndWaitに代わる関数を記述できます。

特定のInvocationEventインスタンスのidパラメータがINVOCATION_FIRSTからINVOCATION_LASTまでの範囲にない場合に、未指定の動作が発生します。

導入されたバージョン:
1.2
関連項目:
  • フィールドのサマリー

    フィールド
    修飾子と型
    フィールド
    説明
    protected boolean
    dispatch()がThrowableをキャッチして例外インスタンス変数に格納する場合は、trueに設定します。
    static final int
    すべてのInvocationEventに対するデフォルトIDです。
    static final int
    呼出しイベントIDの範囲の最初の整数IDをマスクします。
    static final int
    呼出しイベントIDの範囲の最後の整数IDをマスクします。
    protected Object
    Runnable.run()メソッドの復帰後または例外のスロー後、あるいはイベントの破棄後、notifyAll()メソッドがただちに呼び出されるObjectです(nullの場合もあります)。
    protected Runnable
    run()メソッドが呼び出されるRunnableです。

    クラスで宣言されたフィールド 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
    修飾子と型
    フィールド
    説明
    static final long
    アクション・イベント選択用イベント・マスクです。
    static final long
    調整イベント選択用イベント・マスクです。
    static final long
    コンポーネント・イベント選択用イベント・マスクです。
    protected boolean
    転送元の処理後にイベントをピアに送り返すかどうかを制御します。trueの場合は送り返されず、falseの場合は送り返されます。
    static final long
    コンテナ・イベント選択用イベント・マスクです。
    static final long
    フォーカス・イベント選択用イベント・マスクです。
    static final long
    階層境界イベント選択用イベント・マスクです。
    static final long
    階層イベント選択用イベント・マスクです。
    protected int
    イベントのID
    static final long
    インプット・メソッド・イベント選択用イベント・マスクです。
    static final long
    呼出しイベント選択用イベント・マスクです。
    static final long
    項目イベント選択用イベント・マスクです。
    static final long
    キー・イベント選択用イベント・マスクです。
    static final long
    マウス・イベント選択用イベント・マスクです。
    static final long
    マウス・モーション・イベント選択用イベント・マスクです。
    static final long
    マウス・ホイール・イベント選択用イベント・マスクです。
    static final long
    ペイント・イベント選択用イベント・マスクです。
    static final int
    予約済みAWTイベントIDの最大値です。
    static final long
    テキスト・イベント選択用イベント・マスクです。
    static final long
    ウィンドウ・イベント選択用イベント・マスクです。
    static final long
    ウィンドウ・フォーカス・イベント選択用イベント・マスクです。
    static final long
    ウィンドウ状態イベント選択用イベント・マスクです。

    クラスで宣言されたフィールド EventObject

    source
    修飾子と型
    フィールド
    説明
    protected Object
    Eventが最初に発生したオブジェクト。
  • コンストラクタのサマリー

    コンストラクタ
    修飾子
    コンストラクタ
    説明
    protected
    InvocationEvent(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を構築します。
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    void
    Runnableのrun()メソッドを実行し、run()が戻るか例外をスローしたときにnotifier (ある場合)を通知します。
    Runnableのrun()メソッド実行時にキャッチされたExceptionを返します。
    Runnableのrun()メソッド実行時にキャッチされたThrowableを返します。
    long
    このイベントが発生した時点のタイムスタンプを返します。
    boolean
    イベントがディスパッチされるか、ディスパッチ中に例外がスローされた場合は、trueを返し、それ以外の場合はfalseを返します。
    このイベントを特定するパラメータ文字列を返します。

    クラスで宣言されたメソッド AWTEvent

    consume, getID, isConsumed, setSource, toString
    修飾子と型
    メソッド
    説明
    protected void
    このイベントを消費できる場合は消費します。
    int
    イベント・タイプを返します。
    protected boolean
    このイベントが消費されたかどうかを返します。
    void
    setSource(Object newSource)
    イベントを新しいソースにターゲット変更します。
    このオブジェクトの文字列表現を返します。

    クラスで宣言されたメソッド EventObject

    getSource
    修飾子と型
    メソッド
    説明
    Eventが最初に発生したオブジェクト。

    クラスオブジェクトで宣言されたメソッド

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    修飾子と型
    メソッド
    説明
    protected Object
    このオブジェクトのコピーを作成して、返します。
    boolean
    このオブジェクトと他のオブジェクトが等しいかどうかを示します。
    protected void
    削除予定のため非推奨: このAPI要素は、将来のバージョンで削除される可能性があります。
    最終決定は非推奨であり、将来のリリースで削除される可能性があります。
    final Class<?>
    このObjectの実行時クラスを返します。
    int
    このオブジェクトに対するハッシュ・コード値を返します。
    final void
    このオブジェクトのモニターで待機中のスレッドを1つ再開します。
    final void
    このオブジェクトのモニターで待機中のすべてのスレッドを再開します。
    final void
    現在のスレッドが目覚めるまで待機します。通常、notifiedまたはinterruptedです。
    final void
    wait(long timeoutMillis)
    現在のスレッドは、通常、notifiedまたはinterruptedであるか、一定のリアルタイムが経過するまで、目覚めるまで待機します。
    final void
    wait(long timeoutMillis, int nanos)
    現在のスレッドは、通常、notifiedまたはinterruptedであるか、一定のリアルタイムが経過するまで、目覚めるまで待機します。
  • フィールド詳細

    • 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 runnable
      run()メソッドが呼び出されるRunnableです。
    • notifier

      protected volatile Object notifier
      Runnable.run()メソッドの復帰後または例外のスロー後、あるいはイベントの破棄後、notifyAll()メソッドがただちに呼び出されるObjectです(nullの場合もあります)。
      関連項目:
    • catchExceptions

      protected boolean catchExceptions
      dispatch()がThrowableをキャッチして例外インスタンス変数に格納する場合は、trueに設定します。 falseの場合は、ThrowableはEventDispatchThreadのディスパッチ・ループまで伝達されます。
  • コンストラクタの詳細

    • InvocationEvent

      public InvocationEvent(Object source, Runnable runnable)
      指定されたソース(ディスパッチされたときにrunnableのrun()メソッドを実行します)でInvocationEventを構築します。

      これは簡易コンストラクタです。 InvocationEvent(source, runnable)という形式の呼び出しは、InvocationEvent(source, runnable, null, false)の呼び出しとまったく同じように動作します。

      このメソッドはsourcenullの場合にIllegalArgumentExceptionをスローします。

      パラメータ:
      source - イベントを発生させたObject
      runnable - run()メソッドが実行されるRunnable
      スロー:
      IllegalArgumentException - sourceがnullである場合
      関連項目:
    • InvocationEvent

      public InvocationEvent(Object source, Runnable runnable, Object notifier, boolean catchThrowables)
      指定されたソース(ディスパッチされたときにrunnableのrun()メソッドを実行します)でInvocationEventを構築します。 notifierがnullでない場合は、run()が戻ったあとまたは例外のスロー後、ただちにそこでnotifyAll()が呼び出されます。

      InvocationEvent(source, runnable, notifier, catchThrowables)という形式の呼び出しは、InvocationEvent(source, InvocationEvent.INVOCATION_DEFAULT, runnable, notifier, catchThrowables)の呼び出しとまったく同じように動作します。

      このメソッドはsourcenullの場合にIllegalArgumentExceptionをスローします。

      パラメータ:
      source - イベントを発生させたObject
      runnable - run()メソッドが実行されるRunnable
      notifier - Runnable.runの復帰後または例外のスロー後、あるいはイベントの破棄後にnotifyAllメソッドが呼び出されるObject
      catchThrowables - Runnablerun()メソッドの実行時に、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()が呼び出されます。

      このメソッドはsourcenullの場合にIllegalArgumentExceptionをスローします。

      パラメータ:
      source - イベントを発生させたObject
      runnable - run()メソッドが実行されるRunnable
      listener - InvocationEventがディスパッチまたは廃棄された後にrun()メソッドがコールされるRunnable
      catchThrowables - Runnablerun()メソッドの実行時に、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()が呼び出されます。

      このメソッドはsourcenullの場合にIllegalArgumentExceptionをスローします。

      パラメータ:
      source - イベントを発生させたObject
      id - イベントのタイプを示す整数。 許容される値については、InvocationEventのクラスの説明を参照してください。
      runnable - run()メソッドが実行されるRunnable
      notifier - Runnable.runの復帰後または例外のスロー後、あるいはイベントの破棄後にnotifyAllメソッドが呼び出されるObject
      catchThrowables - Runnablerun()メソッドの実行時に、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
      戻り値:
      イベントを特定する文字列とその属性