クラス BaseMessageBuilder<T,B extends BaseMessageBuilder<T,B>>
java.lang.ObjectSE
org.springframework.integration.support.AbstractIntegrationMessageBuilder<T>
org.springframework.integration.support.BaseMessageBuilder<T,B>
- 型パラメーター:
T
- ペイロード型。B
- ターゲットビルダークラス型。
- 既知の直属サブクラス
MessageBuilder
public abstract class BaseMessageBuilder<T,B extends BaseMessageBuilder<T,B>>
extends AbstractIntegrationMessageBuilder<T>
メッセージを作成するためのデフォルトロジックの
AbstractIntegrationMessageBuilder
拡張。MessageBuilder
は完全にこのクラスに基づいています。この抽象クラスは、カスタム Message
インスタンスの作成に使用できます。そのためには、その build()
メソッドをオーバーライドする必要があります。カスタム Message
型は、たとえば、メッセージがログに記録されるときにペイロードとヘッダーから機密情報を非表示にするために使用できます。この目的のためには、GenericMessage.toString()
をオーバーライドし、そのような機密情報を含むヘッダーをフィルター処理 (またはマスク) するだけで十分です。- 導入:
- 6.4
- 作成者:
- Artem Bilan
- 関連事項:
コンストラクターの概要
コンストラクターメソッドのサマリー
修飾子と型メソッド説明build()
変更されておらず、読み取り専用ヘッダーがない場合は、元のメッセージインスタンスを返します。copyHeaders
(MapSE<StringSE, ?> headersToCopy) 提供されたマップから名前と値のペアをコピーします。copyHeadersIfAbsent
(MapSE<StringSE, ?> headersToCopy) 提供されたマップから名前と値のペアをコピーします。protected ObjectSE
<V> V
protected ObjectSE
protected ObjectSE
pushSequenceDetails
(ObjectSE correlationId, int sequenceNumber, int sequenceSize) readOnlyHeaders
(StringSE... readOnlyHeaders) 読み取り専用と見なし、メッセージへの入力を禁止するヘッダーのリストを指定します。removeHeader
(StringSE headerName) 指定されたヘッダー名の値を削除します。removeHeaders
(StringSE... headerPatterns) 'headerPatterns' の配列を介して提供されるすべてのヘッダーを削除します。setCorrelationId
(ObjectSE correlationId) setErrorChannel
(MessageChannel errorChannel) setErrorChannelName
(StringSE errorChannelName) setExpirationDate
(LongSE expirationDate) setExpirationDate
(DateSE expirationDate) 指定されたヘッダー名の値を設定します。setHeaderIfAbsent
(StringSE headerName, ObjectSE headerValue) ヘッダー名がまだ値に関連付けられていない場合にのみ、指定されたヘッダー名の値を設定します。setPriority
(IntegerSE priority) setReplyChannel
(MessageChannel replyChannel) setReplyChannelName
(StringSE replyChannelName) setSequenceNumber
(IntegerSE sequenceNumber) setSequenceSize
(IntegerSE sequenceSize) クラス org.springframework.integration.support.AbstractIntegrationMessageBuilder から継承されたメソッド
cloneMessageHistoryIfAny, filterAndCopyHeadersIfAbsent
コンストラクターの詳細
BaseMessageBuilder
メソッドの詳細
getPayload
- 次で指定:
- クラス
AbstractIntegrationMessageBuilder<T>
のgetPayload
getHeaders
- 次で指定:
- クラス
AbstractIntegrationMessageBuilder<T>
のgetHeaders
getHeader
- 次で指定:
- クラス
AbstractIntegrationMessageBuilder<T>
のgetHeader
setHeader
指定されたヘッダー名の値を設定します。指定された値がnull
の場合、ヘッダーは削除されます。- 次で指定:
- クラス
AbstractIntegrationMessageBuilder<T>
のsetHeader
- パラメーター:
headerName
- ヘッダー名。headerValue
- ヘッダー値。- 戻り値:
- この MessageBuilder。
setHeaderIfAbsent
ヘッダー名がまだ値に関連付けられていない場合にのみ、指定されたヘッダー名の値を設定します。- 次で指定:
- クラス
AbstractIntegrationMessageBuilder<T>
のsetHeaderIfAbsent
- パラメーター:
headerName
- ヘッダー名。headerValue
- ヘッダー値。- 戻り値:
- この MessageBuilder。
removeHeaders
'headerPatterns' の配列で提供されるすべてのヘッダーを削除します。名前が示すように、配列にはヘッダー名の単純な一致パターンが含まれている場合があります。サポートされているパターンスタイルは、xxx*
、*xxx
、*xxx*
、xxx*yyy
です。- 次で指定:
- クラス
AbstractIntegrationMessageBuilder<T>
のremoveHeaders
- パラメーター:
headerPatterns
- ヘッダーパターン。- 戻り値:
- この MessageBuilder。
removeHeader
指定されたヘッダー名の値を削除します。- 次で指定:
- クラス
AbstractIntegrationMessageBuilder<T>
のremoveHeader
- パラメーター:
headerName
- ヘッダー名。- 戻り値:
- この MessageBuilder。
copyHeaders
提供されたマップから名前と値のペアをコピーします。この操作により、既存の値が上書きされます。copyHeadersIfAbsent(Map)
を使用して、値の上書きを回避します。'id' および 'timestamp' ヘッダー値は上書きされないことに注意してください。- 次で指定:
- クラス
AbstractIntegrationMessageBuilder<T>
のcopyHeaders
- パラメーター:
headersToCopy
- コピーするヘッダー。- 戻り値:
- この MessageBuilder。
- 関連事項:
copyHeadersIfAbsent
提供されたマップから名前と値のペアをコピーします。この操作では既存の値は上書きされません。- 次で指定:
- クラス
AbstractIntegrationMessageBuilder<T>
のcopyHeadersIfAbsent
- パラメーター:
headersToCopy
- コピーするヘッダー。- 戻り値:
- この MessageBuilder。
getSequenceDetails
- 次で指定:
- クラス
AbstractIntegrationMessageBuilder<T>
のgetSequenceDetails
getCorrelationId
- 次で指定:
- クラス
AbstractIntegrationMessageBuilder<T>
のgetCorrelationId
getSequenceNumber
- 次で指定:
- クラス
AbstractIntegrationMessageBuilder<T>
のgetSequenceNumber
getSequenceSize
- 次で指定:
- クラス
AbstractIntegrationMessageBuilder<T>
のgetSequenceSize
pushSequenceDetails
- オーバーライド:
- クラス
AbstractIntegrationMessageBuilder<T>
のpushSequenceDetails
popSequenceDetails
- オーバーライド:
- クラス
AbstractIntegrationMessageBuilder<T>
のpopSequenceDetails
setExpirationDate
- オーバーライド:
- クラス
AbstractIntegrationMessageBuilder<T>
のsetExpirationDate
setExpirationDate
- オーバーライド:
- クラス
AbstractIntegrationMessageBuilder<T>
のsetExpirationDate
setCorrelationId
- オーバーライド:
- クラス
AbstractIntegrationMessageBuilder<T>
のsetCorrelationId
setReplyChannel
- オーバーライド:
- クラス
AbstractIntegrationMessageBuilder<T>
のsetReplyChannel
setReplyChannelName
- オーバーライド:
- クラス
AbstractIntegrationMessageBuilder<T>
のsetReplyChannelName
setErrorChannel
- オーバーライド:
- クラス
AbstractIntegrationMessageBuilder<T>
のsetErrorChannel
setErrorChannelName
- オーバーライド:
- クラス
AbstractIntegrationMessageBuilder<T>
のsetErrorChannelName
setSequenceNumber
- オーバーライド:
- クラス
AbstractIntegrationMessageBuilder<T>
のsetSequenceNumber
setSequenceSize
- オーバーライド:
- クラス
AbstractIntegrationMessageBuilder<T>
のsetSequenceSize
setPriority
- オーバーライド:
- クラス
AbstractIntegrationMessageBuilder<T>
のsetPriority
readOnlyHeaders
読み取り専用と見なし、メッセージへの入力を禁止するヘッダーのリストを指定します。- パラメーター:
readOnlyHeaders
-readOnly
モードのヘッダーのリスト。デフォルトはMessageHeaders.ID
およびMessageHeaders.TIMESTAMP
です。- 戻り値:
- 現在の
BaseMessageBuilder
- 関連事項:
build
変更されておらず、読み取り専用ヘッダーがない場合は、元のメッセージインスタンスを返します。payload がThrowable
SE のインスタンスである場合は、ErrorMessage
が構築されます。それ以外の場合は、GenericMessage
の新しいインスタンスが生成されます。このメソッドをオーバーライドして、カスタムメッセージ実装を提供することができます。- 次で指定:
- クラス
AbstractIntegrationMessageBuilder<T>
のbuild
- 戻り値:
- メッセージインスタンス
- 関連事項: