クラス MetadataStoreSelector
java.lang.ObjectSE
org.springframework.integration.selector.MetadataStoreSelector
- 実装されているすべてのインターフェース:
GenericSelector<Message<?>>,MessageSelector
public class MetadataStoreSelector extends ObjectSE implements 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
コンストラクターの概要
コンストラクター コンストラクター 説明 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)メソッドのサマリー
修飾子と型 メソッド 説明 booleanaccept(Message<?> message)MetadataStoreSelectorcompareValues(BiPredicateSE<StringSE,StringSE> compareValues)setCompareValues(BiPredicate)の流暢バージョン。voidsetCompareValues(BiPredicateSE<StringSE,StringSE> compareValues)BiPredicateSE を設定して、キーのメタデータストア内の古い値と新しい値を比較します。
コンストラクターの詳細
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
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