クラス MetadataStoreSelector
java.lang.ObjectSE
org.springframework.integration.selector.MetadataStoreSelector
- 実装されたすべてのインターフェース:
GenericSelector<Message<?>>
,MessageSelector
ConcurrentMetadataStore
および MessageProcessor
を使用した MessageSelector
実装。accept(org.springframework.messaging.Message<?>)
メソッドは、MessageProcessor
を使用して提供された message
から metadataKey
を抽出し、デフォルトで timestamp
ヘッダーを value
(16 進数)として使用します。valueStrategy
は、デフォルトの動作をオーバーライドするために提供できます。
accept(org.springframework.messaging.Message<?>)
メソッドの成功結果は、ConcurrentMetadataStore.putIfAbsent(java.lang.String, java.lang.String)
の戻り値に基づいています。putIfAbsent
が null
を返す場合、true
が返されます。同時に、値が MetadataStore
に配置されたことを意味します。それ以外の場合、key
に関連付けられた MetadataStore
にすでに値があるため、メッセージは受け入れられません。
この MessageSelector
は、べき等レシーバー実装に役立ちます。
MessageFilter
または IdempotentReceiverInterceptor
で使用できます。
- 導入:
- 4.1
- 作成者:
- Artem Bilan, Gary Russell, Christian Tzolov
コンストラクターのサマリー
コンストラクターコンストラクター説明MetadataStoreSelector
(MessageProcessor<StringSE> keyStrategy) MetadataStoreSelector
(MessageProcessor<StringSE> keyStrategy, MessageProcessor<StringSE> valueStrategy) MetadataStoreSelector
(MessageProcessor<StringSE> keyStrategy, MessageProcessor<StringSE> valueStrategy, ConcurrentMetadataStore metadataStore) MetadataStoreSelector
(MessageProcessor<StringSE> keyStrategy, ConcurrentMetadataStore metadataStore) メソッドのサマリー
修飾子と型メソッド説明boolean
compareValues
(BiPredicateSE<StringSE, StringSE> compareValues) setCompareValues(BiPredicate)
の流暢バージョン。void
setCompareValues
(BiPredicateSE<StringSE, StringSE> compareValues) BiPredicate
SE を設定して、キーのメタデータストア内の古い値と新しい値を比較します。
コンストラクターの詳細
MetadataStoreSelector
MetadataStoreSelector
public MetadataStoreSelector(MessageProcessor<StringSE> keyStrategy, MessageProcessor<StringSE> valueStrategy) MetadataStoreSelector
public MetadataStoreSelector(MessageProcessor<StringSE> keyStrategy, ConcurrentMetadataStore metadataStore) MetadataStoreSelector
public MetadataStoreSelector(MessageProcessor<StringSE> keyStrategy, MessageProcessor<StringSE> valueStrategy, ConcurrentMetadataStore metadataStore)
メソッドの詳細
setCompareValues
BiPredicate
SE を設定して、キーのメタデータストア内の古い値と新しい値を比較します。最初のパラメーターは古い値です。このメッセージを受け入れ、古い値を新しい値に置き換える場合は true を返します。- パラメーター:
compareValues
-BiPredicate
SE- 導入:
- 5.3
compareValues
public MetadataStoreSelector compareValues(@Nullable BiPredicateSE<StringSE, StringSE> compareValues) setCompareValues(BiPredicate)
の流暢バージョン。- パラメーター:
compareValues
-BiPredicate
SE- 戻り値:
- this。
accept
- 次で指定:
- インターフェース
GenericSelector<Message<?>>
のaccept
- 次で指定:
- インターフェース
MessageSelector
のaccept