次の方法で共有


要求 - 応答の同期受信アダプター用のインターフェイス

すべての受信アダプターが要求 - 応答モードで動作するには、アダプターに次のインターフェイスを実装する必要があります。

  • IBTTransport

  • IBTTransportControl (通常のアダプターのみ)

  • IBTTransportConfig

  • IBaseComponent

  • IPersistPropertyBag

  • IBTBatchCallBack

  • IBTTransmitter

    要求 - 応答プロトコルをサポートする受信アダプター (HTTP 受信アダプターなど) は、要求メッセージの送信時に、次の処理を実行します。

  1. 受信アダプターが、受信要求メッセージを受信します。 IBTTransportProxy インターフェイスの GetBatch メソッドを呼び出して、トランスポート プロキシからバッチを取得します。 この呼び出しでは、アダプターはコールバック ポインターを IBTBatchCallBack.BatchComplete メソッドの実装に渡します。

  2. アダプターは、要求メッセージごとに 1 回、IBTTransportBatch インターフェイスの SubmitRequestMessage メソッドを呼び出すことによって、バッチに要求メッセージを追加します。

  3. すべてのメッセージが追加されると、アダプターは IBTTransportBatch インターフェイスの Doneメソッドを呼び出し、トランスポート プロキシを介してメッセージング エンジンにバッチを送信します。

  4. バッチが処理されると、メッセージング エンジンは、トランスポート プロキシを介してアダプターの IBTBatchCallBack.BatchComplete コールバック メソッドを呼び出します。 送信の状態が、バッチの各メッセージに対応する HRESULT 値の配列として、アダプターに渡されます。 パイプラインまたはオーケストレーションでバッチが失敗すると、SOAP エラー メッセージが応答としてアダプターに返されます。

  5. 受信要求メッセージには、オーケストレーションのサブスクライバーが含まれる場合があります。 オーケストレーションが完了し、要求メッセージが処理されると、メッセージング エンジンは、IBTTransmitter インターフェイスからアダプターの TransmitMessage メソッドを呼び出すことによって、トランスポート プロキシを介してアダプターに応答メッセージを送信します。

  6. アダプターは応答メッセージを送信し、元のメッセージをメッセージ ボックス データベースから削除します。

    要求 - 応答の同期受信アダプターを作成するときの、オブジェクト間の対話処理を次に示します。

    同期要求/応答受信アダプターの作成に関連するオブジェクトの相互作用を示す画像。
    同期メッセージを送信する受信アダプターのワークフロー

参照

アダプター変数
受信アダプターの開発
受信アダプターのインスタンス化と初期化
インプロセス受信アダプター用のインターフェイス
分離受信アダプター用のインターフェイス
バッチ処理に対応した受信アダプター用のインターフェイス
バッチ処理に対応したトランザクション受信アダプター用のインターフェイス