public class StructuredResponseMessage extends ResponseMessage
InterSystemMessage.HeaderName
Result.ClientError, Result.Error, Result.MultiStatus, Result.NotFound, Result.Success
Constructor and Description |
---|
StructuredResponseMessage(RequestMessage message)
要求電文に対する応答電文を作成する。
RequestMessage#reply() から呼ばれることを想定している。
|
Modifier and Type | Method and Description |
---|---|
ResponseMessage |
addRecord(java.util.Map<java.lang.String,?> record)
電文のデータ部に、指定したレコードを追加する。
出力時に使用するデータレイアウト(レコードタイプ)は、
record の内容から自動的に判別される。 |
ResponseMessage |
addRecord(java.lang.Object recordObj)
電文のデータ部に指定したレコードを追加する。
出力時に使用するデータレイアウト(レコードタイプ)は、渡されたデータの内容から自動的に判別される。
|
ResponseMessage |
addRecord(java.lang.String recordType,
java.util.Map<java.lang.String,?> record)
電文のデータ部に、出力時に使用するデータレイアウト(レコードタイプ)を指定してレコードを追加する。
recordType にnull を渡した場合、SendingMessage.addRecord(Map) と同様の処理を行う。 |
ResponseMessage |
addRecord(java.lang.String recordType,
java.lang.Object recordObj)
電文のデータ部に、出力時に使用するデータレイアウト(レコードタイプ)を指定してレコードを追加する。
recordType にnull を渡した場合、SendingMessage.addRecord(Object) と同様の処理を行う。 |
byte[] |
getBodyBytes()
メッセーボディのバイナリ表現を返す。
送信(仕向)電文の場合はデータレコードをレコードフォーマッタで直列化したものを返す。
受信(被仕向)電文の場合はパース前の送信電文の内容をそのまま返す。
|
StructuredResponseMessage |
setFormatter(DataRecordFormatter formatter)
メッセージボディのフォーマット定義を設定する。
|
getFwHeader, getMessage, getStatusCode, isSuccess, setFwHeaderDefinition, setResult, setStatusCodeHeader, throwAsError, throwAsError
getBodyStream, getTimeToLive, setTimeToLive
getCorrelationId, getDestination, getFormatter, getHeader, getHeaderMap, getMessageId, getParam, getParamMap, getRecordOf, getRecords, getRecordsOf, getReplyTo, setCorrelationId, setDestination, setHeader, setHeaderMap, setMessageId, setReplyTo
@Published(tag="architect") public StructuredResponseMessage(RequestMessage message)
message
- 要求電文オブジェクトpublic StructuredResponseMessage setFormatter(DataRecordFormatter formatter)
setFormatter
in class InterSystemMessage<SendingMessage>
formatter
- フォーマット定義オブジェクトpublic byte[] getBodyBytes()
MessageReplyHandler
によって設定される。
この実装ではこの時点でキャッシュされたメッセージをフォーマッタに書き込み、バイト列を生成する。getBodyBytes
in class ResponseMessage
@Published(tag="architect") public ResponseMessage addRecord(java.util.Map<java.lang.String,?> record)
record
の内容から自動的に判別される。addRecord
in class ResponseMessage
record
- レコード内容@Published(tag="architect") public ResponseMessage addRecord(java.lang.String recordType, java.util.Map<java.lang.String,?> record)
recordType
にnull
を渡した場合、SendingMessage.addRecord(Map)
と同様の処理を行う。addRecord
in class ResponseMessage
recordType
- レコードタイプrecord
- レコード内容@Published(tag="architect") public ResponseMessage addRecord(java.lang.Object recordObj)
addRecord
in class ResponseMessage
recordObj
- レコード内容を表現したオブジェクト@Published(tag="architect") public ResponseMessage addRecord(java.lang.String recordType, java.lang.Object recordObj)
recordType
にnull
を渡した場合、SendingMessage.addRecord(Object)
と同様の処理を行う。addRecord
in class ResponseMessage
recordType
- レコードタイプrecordObj
- レコード内容を表現したオブジェクト