クラス 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, Glenn Renfro
- 関連事項:
コンストラクターの概要
コンストラクターメソッドのサマリー
修飾子と型メソッド説明build()変更されておらず、読み取り専用ヘッダーがない場合は、元のメッセージインスタンスを返します。copyHeaders(@Nullable MapSE<StringSE, ?> headersToCopy) 提供されたマップから名前と値のペアをコピーします。copyHeadersIfAbsent(@Nullable MapSE<StringSE, ?> headersToCopy) 提供されたマップから名前と値のペアをコピーします。protected @Nullable ObjectSE<V> @Nullable Vprotected ObjectSEprotected ObjectSEpushSequenceDetails(ObjectSE correlationId, int sequenceNumber, int sequenceSize) readOnlyHeaders(StringSE @Nullable... readOnlyHeaders) 読み取り専用と見なし、メッセージへの入力を禁止するヘッダーのリストを指定します。removeHeader(StringSE headerName) 指定されたヘッダー名の値を削除します。removeHeaders(StringSE... headerPatterns) 'headerPatterns' の配列を介して提供されるすべてのヘッダーを削除します。setCorrelationId(ObjectSE correlationId) setErrorChannel(MessageChannel errorChannel) setErrorChannelName(StringSE errorChannelName) setExpirationDate(@Nullable LongSE expirationDate) setExpirationDate(@Nullable 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
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 がThrowableSE のインスタンスである場合は、ErrorMessageが構築されます。それ以外の場合は、GenericMessageの新しいインスタンスが生成されます。このメソッドをオーバーライドして、カスタムメッセージ実装を提供することができます。- 次で指定:
- クラス
AbstractIntegrationMessageBuilder<T>のbuild - 戻り値:
- メッセージインスタンス
- 関連事項: