Package nablarch.fw.messaging
Class SyncMessageConvertor
java.lang.Object
nablarch.fw.messaging.SyncMessageConvertor
メッセージ同期送信に使用する電文を変換するクラス。
本クラスは下記の変換を行う。
要求電文(SyncMessage)→送信電文(SendingMessage)[初回送信時、再送時]
受信電文(ReceivedMessage)→応答電文(SyncMessage)[受信時]
- Author:
- Kiyohito Itoh
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionconvertOnReceiveSync(MessageSenderSettings settings, SyncMessage requestMessage, SendingMessage sendingMessage, ReceivedMessage receivedMessage) 受信電文を応答電文に変換する。(受信時)convertOnRetry(MessageSenderSettings settings, SyncMessage requestMessage, SendingMessage timeoutMessage, int retryCount) 要求電文を送信電文に変換する。(再送時)convertOnSendSync(MessageSenderSettings settings, SyncMessage requestMessage) 要求電文を送信電文に変換する。(初回送信時)protected SendingMessagecreateSendingMessage(MessageSenderSettings settings, SyncMessage requestMessage) 指定された設定情報をもとに送信電文を作成する。
-
Constructor Details
-
SyncMessageConvertor
public SyncMessageConvertor()
-
-
Method Details
-
convertOnSendSync
要求電文を送信電文に変換する。(初回送信時)指定された設定情報をもとに送信電文を作成する。 フレームワーク制御ヘッダ以外の設定は
createSendingMessage(MessageSenderSettings, SyncMessage)メソッドに委譲する。FwHeaderを使用して下記のフレームワーク制御ヘッダを設定する。 リクエストIDヘッダ: 送信電文の設定情報が保持している送信用リクエストID 再送電文フラグ: 初回を表す"0"。再送しない場合は設定しない- Parameters:
settings- 送信電文の設定情報requestMessage- 要求電文- Returns:
- 送信電文
-
convertOnRetry
public SendingMessage convertOnRetry(MessageSenderSettings settings, SyncMessage requestMessage, SendingMessage timeoutMessage, int retryCount) 要求電文を送信電文に変換する。(再送時)指定された設定情報をもとに送信電文を作成する。 フレームワーク制御ヘッダ以外の設定は
createSendingMessage(MessageSenderSettings, SyncMessage)メソッドに委譲する。FwHeaderを使用して下記のフレームワーク制御ヘッダを設定する。 リクエストIDヘッダ: 送信電文の設定情報が保持している送信用リクエストID 再送電文フラグ: 再送を表す"1" 再送する送信電文には、タイムアウトした送信電文と関連付けるために、 タイムアウトした送信電文のメッセージIDを設定する。 本実装ではリトライ回数を使用しない。- Parameters:
settings-MessageSenderの設定情報requestMessage- 要求電文timeoutMessage- タイムアウトした送信電文retryCount- リトライ回数。初回送信時は0- Returns:
- 送信電文
-
createSendingMessage
protected SendingMessage createSendingMessage(MessageSenderSettings settings, SyncMessage requestMessage) 指定された設定情報をもとに送信電文を作成する。設定情報から下記の項目を送信電文に設定する。 送信宛先キューの論理名 応答宛先キューの論理名 メッセージボディ部にヘッダとデータを追加する。 下記のレコードタイプを使用する。 ヘッダ: "header" データ: "data"- Parameters:
settings-MessageSenderの設定情報requestMessage- 要求電文- Returns:
- 送信電文
-
convertOnReceiveSync
public SyncMessage convertOnReceiveSync(MessageSenderSettings settings, SyncMessage requestMessage, SendingMessage sendingMessage, ReceivedMessage receivedMessage) 受信電文を応答電文に変換する。(受信時)設定情報が提供するフォーマッタを使用して、 受信電文のメッセージボディ部からヘッダとデータを取り出し、応答電文を作成する。 本実装では送信電文を使用しない。
- Parameters:
settings-MessageSenderの設定情報requestMessage- 要求電文sendingMessage- 送信電文receivedMessage- 受信電文- Returns:
- 応答電文
-