クラス 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, Glenn Renfro
コンストラクターの概要
コンストラクターコンストラクター説明MetadataStoreSelector(MessageProcessor<StringSE> keyStrategy) MetadataStoreSelector(MessageProcessor<StringSE> keyStrategy, @Nullable MessageProcessor<StringSE> valueStrategy) MetadataStoreSelector(MessageProcessor<StringSE> keyStrategy, @Nullable MessageProcessor<StringSE> valueStrategy, ConcurrentMetadataStore metadataStore) MetadataStoreSelector(MessageProcessor<StringSE> keyStrategy, ConcurrentMetadataStore metadataStore) 方法の概要
修飾子と型メソッド説明booleancompareValues(@Nullable BiPredicateSE<StringSE, StringSE> compareValues) setCompareValues(BiPredicate)の流暢バージョン。voidsetCompareValues(@Nullable BiPredicateSE<StringSE, StringSE> compareValues) BiPredicateSE を設定して、キーのメタデータストア内の古い値と新しい値を比較します。
コンストラクターの詳細
MetadataStoreSelector
MetadataStoreSelector
public MetadataStoreSelector(MessageProcessor<StringSE> keyStrategy, @Nullable MessageProcessor<StringSE> valueStrategy) MetadataStoreSelector
public MetadataStoreSelector(MessageProcessor<StringSE> keyStrategy, ConcurrentMetadataStore metadataStore) MetadataStoreSelector
public MetadataStoreSelector(MessageProcessor<StringSE> keyStrategy, @Nullable MessageProcessor<StringSE> valueStrategy, ConcurrentMetadataStore metadataStore)
メソッドの詳細
setCompareValues
BiPredicateSE を設定して、キーのメタデータストア内の古い値と新しい値を比較します。最初のパラメーターは古い値です。このメッセージを受け入れ、古い値を新しい値に置き換える場合は true を返します。- パラメーター:
compareValues-BiPredicateSE- 導入:
- 5.3
compareValues
public MetadataStoreSelector compareValues(@Nullable BiPredicateSE<StringSE, StringSE> compareValues) setCompareValues(BiPredicate)の流暢バージョン。- パラメーター:
compareValues-BiPredicateSE- 戻り値:
- this。
accept
- 次で指定:
- インターフェース
GenericSelector<Message<?>>のaccept - 次で指定:
- インターフェース
MessageSelectorのaccept