@Published public class RequestMessage extends ReceivedMessage implements Request<java.lang.Object>
ReceivedMessage
と比べて、以下の処理が追加されている。
FwHeader
)を保持するResponseMessage
)オブジェクトを作成する1. プロトコルヘッダ (Map) - メッセージID (String) - 宛先キュー名 (String) ...等 2. フレームワーク制御ヘッダ (Map) - リクエストID (String) - ユーザID (String) - 再送制御フラグ (Boolean) - 処理結果ステータスコード (String) ...等 3. メッセージボディ(byte[]) ※ フレームワーク制御ヘッダに相当するデータは含まれない。このクラスは
Request
インタフェースを実装しており、後続業務処理の入力となる。
(リクエストパスとして、フレームワーク制御ヘッダのリクエストIDを使用する。)InterSystemMessage.HeaderName
Constructor and Description |
---|
RequestMessage(FwHeader header,
ReceivedMessage message) |
Modifier and Type | Method and Description |
---|---|
protected ResponseMessage |
createResponseMessage()
応答電文オブジェクトを作成する。
この実装では、応答電文オブジェクトのヘッダの設定は
ResponseMessage.ResponseMessage(RequestMessage) にて行われる。
デフォルト以外の応答電文クラスを使用する場合はサブクラスで本メソッドをオーバーライドすること。 |
FwHeader |
getFwHeader()
フレームワーク制御ヘッダの内容を返す。
|
java.lang.String |
getRequestPath()
リクエストパスを取得する。
|
ResponseMessage |
reply()
この電文に対する応答電文(
ResponseMessage )オブジェクトを作成する。
InterSystemMessage.setFormatter(nablarch.core.dataformat.DataRecordFormatter) で応答電文のフォーマットが指定されている場合はそれを設定する。
指定がなければ、InterSystemMessage.getFormatter() を実行し、電文共通のフォーマットを取得して設定する。
応答電文オブジェクトの生成については、createResponseMessage() を参照。 |
RequestMessage |
setFormatterOfReply(DataRecordFormatter formatter)
応答電文のフォーマットを指定する。
|
RequestMessage |
setRequestPath(java.lang.String requestPath)
リクエストパスを設定する。
|
getBodyBytes, readRecord, readRecords
getCorrelationId, getDestination, getFormatter, getHeader, getHeaderMap, getMessageId, getParam, getParamMap, getRecordOf, getRecords, getRecordsOf, getReplyTo, setCorrelationId, setDestination, setFormatter, setHeader, setHeaderMap, setMessageId, setReplyTo
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getParam, getParamMap
public RequestMessage(FwHeader header, ReceivedMessage message)
header
- フレームワーク制御ヘッダmessage
- 受信電文オブジェクト(フレームワーク制御ヘッダに相当するデータが抜き出し済みであること)public ResponseMessage reply() throws java.lang.UnsupportedOperationException
ResponseMessage
)オブジェクトを作成する。
InterSystemMessage.setFormatter(nablarch.core.dataformat.DataRecordFormatter)
で応答電文のフォーマットが指定されている場合はそれを設定する。
指定がなければ、InterSystemMessage.getFormatter()
を実行し、電文共通のフォーマットを取得して設定する。
応答電文オブジェクトの生成については、createResponseMessage()
を参照。MessagingException
- この電文にReplyToヘッダが指定されていない場合。java.lang.UnsupportedOperationException
protected ResponseMessage createResponseMessage()
ResponseMessage.ResponseMessage(RequestMessage)
にて行われる。
デフォルト以外の応答電文クラスを使用する場合はサブクラスで本メソッドをオーバーライドすること。public java.lang.String getRequestPath()
getRequestPath
in interface Request<java.lang.Object>
java.lang.IllegalArgumentException
- requestPath
がnull
か空文字である場合public RequestMessage setRequestPath(java.lang.String requestPath)
setRequestPath
in interface Request<java.lang.Object>
requestPath
- リクエストパスpublic FwHeader getFwHeader()
public RequestMessage setFormatterOfReply(DataRecordFormatter formatter)
formatter
- 応答電文のフォーマット