Interface SyncMessagingEventHook


@Published(tag="architect") public interface SyncMessagingEventHook
メッセージ送信の処理前後に処理を行うためのインターフェイス。

MessageSender.sendSync(SyncMessage)で電文を送受信する際、処理を差し込む際に使用する。
本インターフェースを実装したクラスに、差し込みたい処理を記述する。 どの電文を送受信した際に処理を差し込むかの設定は、メッセージングプロバイダ定義ファイルと、コンポーネント定義ファイルを用いて行う。

Author:
TIS
See Also:
  • Method Details

    • beforeSend

      void beforeSend(MessageSenderSettings settings, SyncMessage requestMessage)
      メッセージ送信前に呼ばれる処理。
      Parameters:
      settings - メッセージ送信設定
      requestMessage - 送信対象メッセージ
    • afterSend

      void afterSend(MessageSenderSettings settings, SyncMessage requestMessage, SyncMessage responseMessage)
      メッセージ送信後、レスポンスを受け取った後に呼ばれる処理。
      Parameters:
      settings - メッセージ送信設定
      requestMessage - リクエストメッセージ
      responseMessage - レスポンスメッセージ
    • onError

      boolean onError(RuntimeException e, boolean hasNext, MessageSenderSettings settings, SyncMessage requestMessage, SyncMessage responseMessage)
      メッセージ送信中のエラー発生時に呼ばれる処理。
      Parameters:
      e - 発生した例外
      hasNext - 次に呼び出されるSyncMessagingEventHookが存在する場合にtrue
      settings - メッセージ送信設定
      requestMessage - リクエストメッセージ
      responseMessage - レスポンスメッセージとして使用するオブジェクト。本オブジェクトは最終的にMessageSender.sendSync(SyncMessage)の戻り値として返却される。
      Returns:
      trueの場合は処理継続。次のSyncMessagingEventHook#onError(RuntimeException, MessageSenderSettings, SyncMessage)を呼ぶ。
      次がない場合は、MessageSender.sendSync(SyncMessage)}の戻り値として、引数responseMessageの値を返す。
      falseの場合は、本メソッド終了後に引数eをthrowする