メディエーション・プログラミング
メディエーション・インフラストラクチャーの機能を使用して、 メディエーションをプログラミングし、サービス統合バスがメッセージを処理する方法をカスタマイズすることができます。 メディエーション・ハンドラーというコンポーネント内でメディエーション・コードを開発して、 そのメディエーション・ハンドラーをハンドラー・リストに追加します。これは、デプロイおよびインストールの準備ができたアプリケーションです。 メディエーション・ハンドラー・リストの複数のメディエーション・ハンドラーに同時に接続して、 メッセージに対して実行する操作を組み合わせることができます。
メディエーション・ハンドラーは、Java™ プログラム・フレームワークです。これに、メディエーション機能を操作するコードを追加します。例えば、以下のいずれかの方法で、メッセージを処理するためにメディエーションをプログラミングできます。
- メッセージを、あるアプリケーションで作成したフォーマットから 別のアプリケーションで必要なフォーマットへ再フォーマットする
- 内容に基づいてメッセージをルーティングする
- メッセージを複数の宛先へ配布する
- 別のデータ・ソースからメッセージに情報を追加してメッセージを拡張する
- メッセージをある表示形式から別の表示形式へ変換する
以下のプログラミング API はメディエーションのプログラミングを行う際に、
メッセージを処理するために使用可能です。
- MediationHandler API
- メディエーション・ハンドラーは、MediationHandler インターフェースを実装する必要があります。 このインターフェースは、メディエーション・ランタイム環境によって起動されるメソッドを定義します。
- SIMessage および SIMessageContext API
- これらの API によって、メディエーションがメッセージの内容を操作することが可能になります。
- SIMediationSession API
- この API を使用すると、 メディエーションがサービス統合バスにアクセスできるようになるため、メディエーションはメッセージの送受信を行うことができます。
メディエーション・ハンドラー・アプリケーションを Enterprise Archive (EAR ファイル) としてデプロイする前に、アセンブリー・ツール (例えば、IBM® Rational® Application Developer) を使用してハンドラー・リストを作成します。
ハンドラー・リストには、1 つ以上のメディエーション・ハンドラーを含めることができます。実行時に、リスト内の各メディエーション・ハンドラーは順々に呼び出されます。ハンドラー が true の値を返すたびに、同じメッセージ・コンテキスト が次のハンドラーに渡されます。ハンドラーが値 False を返すと、コンテキストは次のハンドラーに渡されません。 メッセージは破棄され、ターゲットの宛先に送信されません。