イベント・ソースは、イベントを Java オブジェクト形式で送信します。
特に、各イベントは、Common Base Event 仕様の Java 表記である org.eclipse.hyades.logging.events.cbe.CommonBaseEvent インターフェースをインプリメントするクラスのインスタンスとなります。
詳しくは、『Common Base Event モデル』を参照してください。
イベントを送信するには、Emitter インターフェースの sendEvent() メソッドを使用します。
エミッターにイベントを送信すると、以下が発生します。
- エミッターは、イベントの complete() メソッドを呼び出して、オプションのコンテンツ完了をトリガーします。詳しくは、イベント・コンテンツの自動終了 を参照してください。
- エミッターは、まだシーケンス番号およびグローバル・インスタンス ID のないイベントにこれらを割り当てます。
- エミッターは、イベントを検証して、Common Base Event 仕様に準拠しているかどうかを確認します。
注: 現行の
Common Base Event 仕様は、イベント包含関係の階層の各レベルで指定された名前を持つ
1 つの拡張データ・エレメントのみを許可します。
ただしこの制限は、本仕様の将来のバージョンには含まれず、Common Event Infrastructure では施行されていません。
- フィルタリングがアクティブの場合、エミッターは、現行のフィルタ
ー基準に対してイベントを確認して、イベントが送信すべきか廃棄すべきかを判別します。
- 最後に、イベントが有効でフィルター基準を満たしている場合、パーシスタンスを保ちイベント・コンシューマーへの配布を行うために、エミッターはこのイベントをイベント・サーバーに送信します。
イベントが無効な場合や、イベント・サーバーへイベントの送信を試みた際にエミッターで問題が発生した場合には、
例外がスローされます。
注: WebSphere セキュリティーが使用可能になっている場合に同期 EJB 送信を使用してイベントを送信するには、
アプリケーション・ユーザー ID が eventCreator または eventAdministrator のロールにマップされている必要があります。