同步要求-回應接收配接器介面
所有的接收配接器都必須實作下列介面,才能以要求-回應模式運作:
IBTTransport
僅) IBTTransportControl (一般介面卡
IBTTransportConfig
IBaseComponent
IPersistPropertyBag
IBTBatchCallBack
IBTTransmitter
支援要求-回應通訊協定的接收配接器 (例如 HTTP 接收配接器) 在提交要求訊息時都會執行下列動作:
接收配接器接收內送要求訊息。 它會藉由呼叫IBTTransportProxy介面的GetBatch方法,從傳輸 Proxy 取得批次。 在此呼叫中,配接器會將回呼指標傳遞至其 IBTBatchCallBack.BatchComplete 方法的實作。
配接器會針對每個要求訊息呼叫IBTTransportBatch介面的SubmitRequestMessage方法,將要求訊息新增至批次。
新增所有訊息之後,配接器會呼叫IBTTransportBatch介面的Done方法,該介面會透過傳輸 Proxy 將批次提交至傳訊引擎。
處理批次之後,傳訊引擎會透過傳輸 Proxy 叫用配接器的 IBTBatchCallBack.BatchComplete 回呼方法。 提交的狀態將以對應於批次中各個訊息的 HRESULT 值陣列,傳送至配接器。 如果批次在管線或協調流程中失敗,則會將 SOAP 錯誤訊息傳回給配接器,以做為回應。
內送要求訊息可能有協調流程訂閱者。 協調流程完成並處理要求訊息之後,傳訊引擎會從IBTTransmitter介面呼叫配接器的TransmitMessage方法,透過傳輸 Proxy 將回應訊息傳送至配接器。
配接器會傳送回應訊息,並刪除 MessageBox 資料庫中的原始訊息。
下圖顯示在建立同步要求-回應接收配接器時所牽涉的物件互動。
接收配接器提交同步訊息的工作流程
另請參閱
配接器變數
開發接收配接器
具現化並初始化接收配接器
內含式接收配接器介面
外掛式接收配接器介面
批次支援接收配接器介面
交易式批次支援接收配接器介面