インターフェース | 説明 |
---|---|
Event<T> | 特定の型のイベントを起動することをアプリケーションに許可します。 |
NotificationOptions | 通知オプションは、オブザーバー通知を構成するために使用されます。 |
NotificationOptions.Builder | 通知オプションビルダー。 |
列挙型 | 説明 |
---|---|
Reception | 条件付きオブザーバーメソッドを、常に通知されるオブザーバーメソッドと区別します。 |
TransactionPhase | さまざまな種類のトランザクションオブザーバーメソッドを、すぐに通知される通常のオブザーバーメソッドと区別します。 |
例外 | 説明 |
---|---|
ObserverException | イベント通知中にオブザーバーメソッドによってチェック済み例外がスローされたことを示します。 |
アノテーション型 | 説明 |
---|---|
Observes | オブザーバーメソッドのイベントパラメーターを識別します。 |
ObservesAsync | 非同期オブザーバーメソッドのイベントパラメーターを識別します。 |
イベントに関連するアノテーションとインターフェース。
Bean はイベントを生成および消費できます。イベントを使用すると、対話する Bean 間でコンパイル時の依存関係を持たずに、Bean が完全に分離された方法で対話できるようになります。最も重要なことは、アプリケーションの 1 つのアーキテクチャ層にあるステートフル Bean が、その内部状態を別の層で発生する状態変化と同期できることです。
イベントは同期的または非同期的に発生します。
イベントは以下を含みます:
Event
インターフェースは、イベントを発生させるために使用されます。
イベントオブジェクトはペイロードとして機能し、プロデューサーからコンシューマーに状態を伝播します。イベントオブジェクトは、型変数のない具象 Java クラスのインスタンスです。
イベントのイベント型には、イベントオブジェクトのランタイムクラスのすべてのスーパークラスとインターフェースが含まれます。イベント型に型変数を含めることはできません。
イベント修飾子はトピックセレクターとして機能し、コンシューマーが監視するイベントのセットを絞り込むことができます。イベント修飾子は、任意の修飾子型のインスタンスにすることができます。
オブザーバーメソッドを使用すると、アプリケーションはイベント通知を同期的に受信して応答できます。また、非同期オブザーバーメソッドを使用すると、アプリケーションはイベント通知を非同期で受信して応答できます。これらは両方ともイベントコンシューマーとして機能し、特定の修飾子のセットを使用して特定の型のイベントを監視します。任意の Java 型は、オブザーバーメソッドによって監視できます。
オブザーバーメソッドは、@Observes
または @ObservesAsync
というアノテーションが付けられたパラメーターを持つ Bean クラスまたは拡張のメソッドです。
以下の場合、オブザーバーメソッドにイベントが通知されます。
同期オブザーバーメソッドがトランザクションオブザーバーメソッドであり、イベントが発生したときに進行中の JTA トランザクションがある場合、オブザーバーメソッドは適切なトランザクション完了フェーズ中に通知されます。それ以外の場合は、イベントが発生したときにオブザーバーに通知されます。
オブザーバメソッドが呼び出される順序は、@ の値に依存して優先観察者に適用されます。
オブザーバーに優先度が定義されていない場合、その優先度は jakarta.interceptor.Interceptor.Priority.APPLICATION+500 になります。
2 人のオブザーバが同じ優先度を持っている場合、それらの相対的な順序は定義されていません。
オブザーバーメソッドは例外をスローする場合があります。
CompletionException
SE に抑制された例外として追加されます。ObserverException
として再スローされます。Copyright © 2018,2020 Eclipse Foundation.
Use is subject to license terms.