クラス AbstractKeyValueMessageStore
java.lang.ObjectSE
org.springframework.integration.store.AbstractBatchingMessageGroupStore
org.springframework.integration.store.AbstractMessageGroupStore
org.springframework.integration.store.AbstractKeyValueMessageStore
- 実装済みのインターフェース一覧:
IterableSE<MessageGroup>, IntegrationPattern, BasicMessageGroupStore, MessageGroupStore, MessageStore
- 既知の直属サブクラス
HazelcastMessageStore, RedisMessageStore
public abstract class AbstractKeyValueMessageStore
extends AbstractMessageGroupStore
implements MessageStore
Key/Value スタイル
MessageGroupStore および MessageStore の実装の基本クラス。- 導入:
- 2.1
- 作成者:
- Oleg Zhurakousky, Gary Russell, Artem Bilan, Ngoc Nhan, Youbin Wu
ネストされたクラスの概要
インターフェース MessageGroupStore から継承されたネストクラス / インターフェース
MessageGroupStore.MessageGroupCallbackフィールド概要
フィールドクラス AbstractMessageGroupStore から継承されたフィールド
INTERRUPTED_WHILE_OBTAINING_LOCK, loggerコンストラクター概要
コンストラクター修飾子コンストラクター説明protectedprotectedAbstractKeyValueMessageStore(StringSE prefix) 指定されたキーのプレフィックスに基づいてインスタンスを構築し、同じターゲットキー / 値データベース内の異なるストアインスタンスを区別します。方法の概要
修飾子と型メソッド説明<T> Message<T> addMessage(Message<T> message) 提供されたメッセージを MessageStore に入れます。protected voiddoAddMessage(Message<?> message) protected voiddoAddMessage(Message<?> message, @Nullable ObjectSE groupId) protected voiddoAddMessagesToGroup(ObjectSE groupId, Message<?>... messages) protected voiddoCompleteGroup(ObjectSE groupId) protected abstract @Nullable CollectionSE<?> doListKeys(StringSE keyPattern) protected @Nullable Message<?> doPollMessageFromGroup(ObjectSE groupId) protected abstract @Nullable ObjectSEprotected abstract voiddoRemoveAll(CollectionSE<ObjectSE> ids) protected booleandoRemoveMessageFromGroupById(ObjectSE groupId, UUIDSE messageId) protected voiddoRemoveMessageGroup(ObjectSE groupId) 提供されたグループ ID を持つ MessageGroup を削除します。protected voiddoRemoveMessagesFromGroup(ObjectSE groupId, CollectionSE<Message<?>> messages) protected abstract @Nullable ObjectSEdoRetrieve(ObjectSE id) protected voiddoSetGroupCondition(ObjectSE groupId, StringSE condition) protected voiddoSetLastReleasedSequenceNumberForGroup(ObjectSE groupId, int sequenceNumber) protected abstract voidprotected abstract voiddoStoreIfAbsent(ObjectSE id, ObjectSE objectToStore) @Nullable MessageGroupMetadatagetGroupMetadata(ObjectSE groupId) メッセージをフェッチせずにグループメタデータを取得します。他のすべてのグループプロパティを提供する必要があります。最初のメッセージの ID を含めることができます。同じターゲットキー / 値データベース内の異なるストアインスタンスを区別するために、メッセージグループキーの構成済みプレフィックスを返します。@Nullable Message<?> getMessage(UUIDSE messageId) longストア内のメッセージ数を示すオプションの属性。@Nullable Message<?> getMessageFromGroup(ObjectSE groupId, UUIDSE messageId) ID を使用してグループからMessageを取得します。getMessageGroup(ObjectSE groupId) 必要に応じて、SimpleMessageGroup の新しいインスタンスを作成します。@Nullable MessageMetadatagetMessageMetadata(UUIDSE messageId) 同じターゲットキー / 値データベース内の異なるストアインスタンスを区別するために、メッセージキーの構成済みプレフィックスを返します。CollectionSE<Message<?>> getMessagesForGroup(ObjectSE groupId) 指定されたグループ ID のメッセージを取得します。@Nullable Message<?> getOneMessageFromGroup(ObjectSE groupId) MessageGroupから 1 つのMessageを返します。iterator()intmessageGroupSize(ObjectSE groupId) この MessageGroup のサイズを返します。@Nullable Message<?> removeMessage(UUIDSE id) 指定された ID のメッセージを MessageStore から削除し(存在する場合)、それを返します。streamMessagesForGroup(ObjectSE groupId) 指定されたグループに保存されているメッセージのストリームを返します。クラス AbstractMessageGroupStore から継承されたメソッド
addMessagesToGroup, addMessageToGroup, completeGroup, copy, executeLocked, executeLocked, expireMessageGroups, getLockRegistry, getMessageCountForAllMessageGroups, getMessageGroupCount, getMessageGroupFactory, isTimeoutOnIdle, pollMessageFromGroup, registerMessageGroupExpiryCallback, removeMessageFromGroupById, removeMessageGroup, removeMessagesFromGroup, removeMessagesFromGroup, setExpiryCallbacks, setGroupCondition, setLastReleasedSequenceNumberForGroup, setLazyLoadMessageGroups, setLockRegistry, setTimeoutOnIdleクラス AbstractBatchingMessageGroupStore から継承されたメソッド
getRemoveBatchSize, setMessageGroupFactory, setRemoveBatchSizeクラス ObjectSE から継承されたメソッド
clone, equalsSE, finalize, getClass, hashCode, notify, notifyAll, toString, wait, waitSE, waitSEインターフェース IterableSE から継承されたメソッド
forEachSE, spliteratorインターフェース MessageStore から継承されたメソッド
getIntegrationPatternType
フィールドの詳細
MESSAGE_KEY_PREFIX
- 関連事項:
MESSAGE_GROUP_KEY_PREFIX
- 関連事項:
コンストラクターの詳細
AbstractKeyValueMessageStore
protected AbstractKeyValueMessageStore()AbstractKeyValueMessageStore
指定されたキーのプレフィックスに基づいてインスタンスを構築し、同じターゲットキー / 値データベース内の異なるストアインスタンスを区別します。デフォルトは空の文字列で、プレフィックスはありません。メッセージの実際のプレフィックスはprefix + MESSAGE_です。メッセージグループ用 -prefix + GROUP_OF_MESSAGES_- パラメーター:
prefix- 使用する接頭辞- 導入:
- 4.3.12
方法の詳細
getMessagePrefix
同じターゲットキー / 値データベース内の異なるストアインスタンスを区別するために、メッセージキーの構成済みプレフィックスを返します。デフォルトは "MESSAGE_" (カスタムプレフィックスなし) です。- 戻り値:
- キーのプレフィックス
- 導入:
- 4.3.12
getGroupPrefix
同じターゲットキー / 値データベース内の異なるストアインスタンスを区別するために、メッセージグループキーの構成済みプレフィックスを返します。デフォルトは "GROUP_OF_MESSAGES_" (カスタムプレフィックスなし) です。- 戻り値:
- キーのプレフィックス
- 導入:
- 4.3.12
getMessage
- 次で指定:
- インターフェース
MessageStore内のgetMessage - パラメーター:
messageId- メッセージ識別子。- 戻り値:
- 指定された ID のメッセージ。MessageStore にその ID のメッセージが存在しない場合は null。
getMessageMetadata
インターフェースからコピーされた説明:MessageStore- 次で指定:
- インターフェース
MessageStore内のgetMessageMetadata - パラメーター:
messageId- メッセージ識別子。- 戻り値:
- 指定された ID の MessageMetadata、またはその ID のメッセージが MessageStore に存在しないか、メッセージにメタデータがない場合(以前のバージョンのレガシーメッセージ)は null。
addMessage
インターフェースからコピーされた説明:MessageStore提供されたメッセージを MessageStore に格納します。ストアは内部的にメッセージを変更する必要がある可能性があり、その場合、戻り値は入力値と異なる場合があります。戻り値の ID は、MessageStore.getMessage(UUID)とMessageStore.removeMessage(UUID)が正しく動作するためのインデックスとして使用されます。メッセージは不変であるため、同じメッセージを複数回格納しても何も起こりません。- 次で指定:
- インターフェース
MessageStore内のaddMessage - 型パラメーター:
T- ペイロード型。- パラメーター:
message- メッセージ。- 戻り値:
- 保存されたメッセージ。
doAddMessage
doAddMessage
removeMessage
インターフェースからコピーされた説明:MessageStore指定された ID を持つメッセージが MessageStore から削除されます (存在する場合)。その ID を持つメッセージがストアに存在しない場合は、nullが返されます。このメソッドがMessageGroupStoreに実装されている場合、このメッセージを保持するグループがない場合にのみ、メッセージはストアから削除されます。- 次で指定:
- インターフェース
MessageStore内のremoveMessage - パラメーター:
id- メッセージ識別子。- 戻り値:
- メッセージ (ある場合)。
getMessageCount
インターフェースからコピーされた説明:MessageStoreストア内のメッセージ数を示すオプションの属性。実装は例外をスローすることで応答を拒否する場合があります。- 次で指定:
- インターフェース
MessageStore内のgetMessageCount - 戻り値:
- メッセージの数。
getMessageGroup
必要に応じて、SimpleMessageGroup の新しいインスタンスを作成します。- 次で指定:
- インターフェース
BasicMessageGroupStore内のgetMessageGroup - パラメーター:
groupId- グループ識別子。- 戻り値:
- メッセージのグループ。このキーにメッセージが存在しない場合は空です。
getGroupMetadata
インターフェースからコピーされた説明:MessageGroupStoreメッセージをフェッチせずにグループメタデータを取得します。他のすべてのグループプロパティを提供する必要があります。最初のメッセージの ID を含めることができます。- 次で指定:
- インターフェース
MessageGroupStore内のgetGroupMetadata - パラメーター:
groupId- グループ ID。- 戻り値:
- メタデータ。
doAddMessagesToGroup
- 次で指定:
- クラス
AbstractMessageGroupStoreのdoAddMessagesToGroup
doRemoveMessagesFromGroup
- 次で指定:
- クラス
AbstractMessageGroupStoreのdoRemoveMessagesFromGroup
getMessageFromGroup
インターフェースからコピーされた説明:MessageGroupStoreID を使用してグループからMessageを取得します。メッセージがリクエストされたグループに属していない場合は、nullを返します。- 次で指定:
- インターフェース
MessageGroupStore内のgetMessageFromGroup - パラメーター:
groupId- メッセージを含むグループの groupId。messageId- メッセージ ID。- 戻り値:
- リクエストされたグループに属している場合は、ID によるメッセージ。
doRemoveMessageFromGroupById
- オーバーライド:
- クラス
AbstractMessageGroupStoreのdoRemoveMessageFromGroupById
doCompleteGroup
- 次で指定:
- クラス
AbstractMessageGroupStoreのdoCompleteGroup
doRemoveMessageGroup
提供されたグループ ID を持つ MessageGroup を削除します。- 次で指定:
- クラス
AbstractMessageGroupStoreのdoRemoveMessageGroup
doSetGroupCondition
- 次で指定:
- クラス
AbstractMessageGroupStoreのdoSetGroupCondition
doSetLastReleasedSequenceNumberForGroup
doPollMessageFromGroup
- 次で指定:
- クラス
AbstractMessageGroupStoreのdoPollMessageFromGroup
getOneMessageFromGroup
インターフェースからコピーされた説明:MessageGroupStoreMessageGroupから 1 つのMessageを返します。- 次で指定:
- インターフェース
MessageGroupStore内のgetOneMessageFromGroup - パラメーター:
groupId- グループ識別子。- 戻り値:
Message
getMessagesForGroup
インターフェースからコピーされた説明:MessageGroupStore指定されたグループ ID のメッセージを取得します。- 次で指定:
- インターフェース
MessageGroupStore内のgetMessagesForGroup - パラメーター:
groupId- メッセージを取得するグループ ID。- 戻り値:
- グループのメッセージ。
streamMessagesForGroup
インターフェースからコピーされた説明:MessageGroupStore指定されたグループに保存されているメッセージのストリームを返します。永続的な実装は、完全に処理されたら閉じる必要があるストリームを返します(たとえば、try-with-resources 句を使用)。デフォルトでは、MessageGroupStore.getMessagesForGroup(Object)の結果をストリーミングします。- 次で指定:
- インターフェース
MessageGroupStore内のstreamMessagesForGroup - パラメーター:
groupId- メッセージを取得するためのグループ ID。- 戻り値:
- このグループのメッセージの
StreamSE。
iterator
- 次で指定:
- インターフェース
IterableSE<MessageGroup>内のiterator - 次で指定:
- インターフェース
MessageGroupStore内のiterator - 戻り値:
- 現在累積されている
MessageGroupの反復子。
messageGroupSize
インターフェースからコピーされた説明:BasicMessageGroupStoreこの MessageGroup のサイズを返します。- 次で指定:
- インターフェース
BasicMessageGroupStore内のmessageGroupSize - パラメーター:
groupId- グループ識別子。- 戻り値:
- サイズ。
doRetrieve
doStore
doStoreIfAbsent
doRemove
doRemoveAll
doListKeys