クラス ConfigurableMongoDbMessageStore
java.lang.ObjectSE
org.springframework.integration.store.AbstractBatchingMessageGroupStore
org.springframework.integration.store.AbstractMessageGroupStore
org.springframework.integration.mongodb.store.AbstractConfigurableMongoDbMessageStore
org.springframework.integration.mongodb.store.ConfigurableMongoDbMessageStore
- 実装されたすべてのインターフェース:
IterableSE<MessageGroup>
、Aware
、InitializingBean
、ApplicationContextAware
、BasicMessageGroupStore
、MessageGroupStore
、MessageStore
public class ConfigurableMongoDbMessageStore
extends AbstractConfigurableMongoDbMessageStore
implements MessageStore
ユーザーが
MongoTemplate
のインスタンスを構成できるようにする代替の MongoDB MessageStore
および MessageGroupStore
。メッセージ / メッセージのグループをストアに保存するメカニズムは、MongoDbMessageStore
とは異なります。ストアはデフォルトでメッセージの直列化を使用するため、メッセージのすべてのヘッダーとペイロードは Serializable
SE インターフェースを実装する必要があります - 導入:
- 3.0
- 作成者:
- Amol Nayak, Artem Bilan, Gary Russell, Ngoc Nhan
ネストされたクラスのサマリー
インターフェース org.springframework.integration.store.MessageGroupStore から継承されたネストクラス / インターフェース
MessageGroupStore.MessageGroupCallback
フィールドのサマリー
フィールドクラス org.springframework.integration.mongodb.store.AbstractConfigurableMongoDbMessageStore から継承されたフィールド
collectionName, logger, mongoDbFactory, SEQUENCE_NAME
コンストラクターの概要
コンストラクターコンストラクター説明ConfigurableMongoDbMessageStore
(MongoTemplate mongoTemplate) ConfigurableMongoDbMessageStore
(MongoTemplate mongoTemplate, StringSE collectionName) ConfigurableMongoDbMessageStore
(MongoDatabaseFactory mongoDbFactory) ConfigurableMongoDbMessageStore
(MongoDatabaseFactory mongoDbFactory, StringSE collectionName) ConfigurableMongoDbMessageStore
(MongoDatabaseFactory mongoDbFactory, MappingMongoConverter mappingMongoConverter) ConfigurableMongoDbMessageStore
(MongoDatabaseFactory mongoDbFactory, MappingMongoConverter mappingMongoConverter, StringSE collectionName) メソッドのサマリー
修飾子と型メソッド説明<T> Message
<T> addMessage
(Message<T> message) 提供されたメッセージを MessageStore に入れます。void
addMessagesToGroup
(ObjectSE groupId, Message<?>... messages) グループ ID に関連付けてメッセージを保存します。addMessageToGroup
(ObjectSE groupId, Message<?> message) グループ ID に関連付けてメッセージを保存します。void
completeGroup
(ObjectSE groupId) この MessageGroup を完成させます。long
ストア内のメッセージ数を示すオプションの属性。int
すべてのグループにわたるストア内のメッセージの数を示すオプションの属性。Message
<?> getMessageFromGroup
(ObjectSE groupId, UUIDSE messageId) ID を使用してグループからMessage
を取得します。getMessageGroup
(ObjectSE groupId) このグループ ID でBasicMessageGroupStore.addMessageToGroup(Object, Message)
を使用して保存された、現在 MessageStore にあるすべてのメッセージを返します。int
メッセージグループの数を示すオプションの属性。CollectionSE
<Message<?>> getMessagesForGroup
(ObjectSE groupId) 指定されたグループ ID のメッセージを取得します。Message
<?> getOneMessageFromGroup
(ObjectSE groupId) MessageGroup
から 1 つのMessage
を返します。iterator()
Message
<?> pollMessageFromGroup
(ObjectSE groupId) このMessageGroup
からのメッセージのポーリング(実装でサポートされている場合は FIFO スタイル)と同時に、ポーリングされたMessage
も削除します。Message
<?> removeMessage
(UUIDSE id) 指定された ID のメッセージを MessageStore から削除し(存在する場合)、それを返します。boolean
removeMessageFromGroupById
(ObjectSE groupId, UUIDSE messageId) グループからメッセージを削除します。void
removeMessagesFromGroup
(ObjectSE groupId, CollectionSE<Message<?>> messages) グループからのメッセージの削除を永続化します。void
setGroupCondition
(ObjectSE groupId, StringSE condition) グループに条件文を追加します。void
setLastReleasedSequenceNumberForGroup
(ObjectSE groupId, int sequenceNumber) 最後にリリースされたメッセージのシーケンス番号を設定できます。streamMessagesForGroup
(ObjectSE groupId) 指定されたグループに保存されているメッセージのストリームを返します。クラス org.springframework.integration.mongodb.store.AbstractConfigurableMongoDbMessageStore から継承されたメソッド
addMessageDocument, afterPropertiesSet, createIndexes, getApplicationContext, getMappingMongoConverter, getMessage, getMessageBuilderFactory, getMessageMetadata, getMongoTemplate, getNextId, groupIdQuery, messageGroupSize, removeMessageGroup, setApplicationContext, setCreateIndexes
クラス org.springframework.integration.store.AbstractMessageGroupStore から継承されたメソッド
copy, expireMessageGroups, getGroupMetadata, getMessageGroupFactory, isTimeoutOnIdle, registerMessageGroupExpiryCallback, removeMessagesFromGroup, setExpiryCallbacks, setLazyLoadMessageGroups, setTimeoutOnIdle
クラス org.springframework.integration.store.AbstractBatchingMessageGroupStore から継承されたメソッド
getRemoveBatchSize, setMessageGroupFactory, setRemoveBatchSize
クラス java.lang.ObjectSE から継承されたメソッド
clone, equalsSE, finalize, getClass, hashCode, notify, notifyAll, toString, wait, waitSE, waitSE
インターフェース java.lang.IterableSE から継承されたメソッド
forEachSE, spliterator
インターフェース org.springframework.integration.store.MessageStore から継承されたメソッド
getMessage, getMessageMetadata
フィールドの詳細
DEFAULT_COLLECTION_NAME
- 関連事項:
コンストラクターの詳細
ConfigurableMongoDbMessageStore
ConfigurableMongoDbMessageStore
ConfigurableMongoDbMessageStore
ConfigurableMongoDbMessageStore
public ConfigurableMongoDbMessageStore(MongoDatabaseFactory mongoDbFactory, MappingMongoConverter mappingMongoConverter) ConfigurableMongoDbMessageStore
public ConfigurableMongoDbMessageStore(MongoDatabaseFactory mongoDbFactory, StringSE collectionName) ConfigurableMongoDbMessageStore
public ConfigurableMongoDbMessageStore(MongoDatabaseFactory mongoDbFactory, MappingMongoConverter mappingMongoConverter, StringSE collectionName)
メソッドの詳細
addMessage
インターフェースからコピーされた説明:MessageStore
提供されたメッセージを MessageStore に入れます。ストアはメッセージを内部で変更する必要がある場合があり、その場合、戻り値は入力と異なる場合があります。戻り値の ID は、MessageStore.getMessage(UUID)
およびMessageStore.removeMessage(UUID)
が正しく動作するようにインデックスとして使用されます。メッセージは不変であるため、同じメッセージを複数回入力しても何も起こりません。- 次で指定:
- インターフェース
MessageStore
のaddMessage
- 型パラメーター:
T
- ペイロード型。- パラメーター:
message
- メッセージ。- 戻り値:
- 保存されたメッセージ。
removeMessage
インターフェースからコピーされた説明:MessageStore
指定された ID を持つメッセージが MessageStore から削除されます (存在する場合)。その ID を持つメッセージがストアに存在しない場合は、null
が返されます。このメソッドがMessageGroupStore
に実装されている場合、このメッセージを保持するグループがない場合にのみ、メッセージはストアから削除されます。- 次で指定:
- インターフェース
MessageStore
のremoveMessage
- パラメーター:
id
- メッセージ識別子。- 戻り値:
- メッセージ (ある場合)。
getMessageCount
public long getMessageCount()インターフェースからコピーされた説明:MessageStore
ストア内のメッセージ数を示すオプションの属性。実装は例外をスローすることで応答を拒否する場合があります。- 次で指定:
- インターフェース
MessageStore
のgetMessageCount
- 戻り値:
- メッセージの数。
getMessageGroup
インターフェースからコピーされた説明:BasicMessageGroupStore
このグループ ID でBasicMessageGroupStore.addMessageToGroup(Object, Message)
を使用して保存された、現在 MessageStore にあるすべてのメッセージを返します。- 次で指定:
- インターフェース
BasicMessageGroupStore
のgetMessageGroup
- パラメーター:
groupId
- グループ識別子。- 戻り値:
- メッセージのグループ。このキーにメッセージが存在しない場合は空です。
addMessageToGroup
インターフェースからコピーされた説明:BasicMessageGroupStore
グループ ID に関連付けてメッセージを保存します。これは、メッセージをグループ化するために使用できます。- 次で指定:
- インターフェース
BasicMessageGroupStore
のaddMessageToGroup
- オーバーライド:
- クラス
AbstractMessageGroupStore
のaddMessageToGroup
- パラメーター:
groupId
- メッセージを保存するグループ ID。message
- メッセージ。- 戻り値:
- メッセージグループ。
addMessagesToGroup
インターフェースからコピーされた説明:MessageGroupStore
グループ ID に関連付けてメッセージを保存します。これは、メッセージをグループ化するために使用できます。- 次で指定:
- インターフェース
MessageGroupStore
のaddMessagesToGroup
- オーバーライド:
- クラス
AbstractConfigurableMongoDbMessageStore
のaddMessagesToGroup
- パラメーター:
groupId
- メッセージを保存するグループ ID。messages
- 追加するメッセージ。
removeMessagesFromGroup
インターフェースからコピーされた説明:MessageGroupStore
グループからのメッセージの削除を永続化します。- 次で指定:
- インターフェース
MessageGroupStore
のremoveMessagesFromGroup
- オーバーライド:
- クラス
AbstractConfigurableMongoDbMessageStore
のremoveMessagesFromGroup
- パラメーター:
groupId
- メッセージを含むグループの groupId。messages
- 削除するメッセージ。
getMessageFromGroup
インターフェースからコピーされた説明:MessageGroupStore
ID を使用してグループからMessage
を取得します。メッセージがリクエストされたグループに属していない場合は、null
を返します。- 次で指定:
- インターフェース
MessageGroupStore
のgetMessageFromGroup
- パラメーター:
groupId
- メッセージを含むグループの groupId。messageId
- メッセージ ID。- 戻り値:
- リクエストされたグループに属している場合は、ID によるメッセージ。
removeMessageFromGroupById
インターフェースからコピーされた説明:MessageGroupStore
グループからメッセージを削除します。- 次で指定:
- インターフェース
MessageGroupStore
のremoveMessageFromGroupById
- パラメーター:
groupId
- メッセージを含むグループの groupId。messageId
- 削除するメッセージ ID。- 戻り値:
- メッセージが削除された場合は true。
pollMessageFromGroup
インターフェースからコピーされた説明:BasicMessageGroupStore
このMessageGroup
からのメッセージのポーリング(実装でサポートされている場合は FIFO スタイル)と同時に、ポーリングされたMessage
も削除します。- 次で指定:
- インターフェース
BasicMessageGroupStore
のpollMessageFromGroup
- パラメーター:
groupId
- グループ識別子。- 戻り値:
- メッセージ。
setLastReleasedSequenceNumberForGroup
インターフェースからコピーされた説明:MessageGroupStore
最後にリリースされたメッセージのシーケンス番号を設定できます。ユースケースの並べ替えに使用- 次で指定:
- インターフェース
MessageGroupStore
のsetLastReleasedSequenceNumberForGroup
- オーバーライド:
- クラス
AbstractConfigurableMongoDbMessageStore
のsetLastReleasedSequenceNumberForGroup
- パラメーター:
groupId
- グループ識別子。sequenceNumber
- シーケンス番号。
setGroupCondition
インターフェースからコピーされた説明:MessageGroupStore
グループに条件文を追加します。後でグループの意思決定に使用できます。相関ハンドラーのリリース戦略では、グループ内のすべてのメッセージを繰り返す代わりに、この条件を調べることができます。- 次で指定:
- インターフェース
MessageGroupStore
のsetGroupCondition
- オーバーライド:
- クラス
AbstractConfigurableMongoDbMessageStore
のsetGroupCondition
- パラメーター:
groupId
- グループ識別子。condition
- グループに保存する条件。
completeGroup
インターフェースからコピーされた説明:MessageGroupStore
これで MessageGroup が完成します。MessageGroup の補完は一般に、このグループに対してそれ以上の変異操作の実行を許可すべきではないことを意味します。たとえば、グループから新しいメッセージを追加 / 削除する試みは許可されるべきではありません。- 次で指定:
- インターフェース
MessageGroupStore
のcompleteGroup
- オーバーライド:
- クラス
AbstractConfigurableMongoDbMessageStore
のcompleteGroup
- パラメーター:
groupId
- グループ識別子。
iterator
- 次で指定:
- インターフェース
IterableSE<MessageGroup>
のiterator
- 次で指定:
- インターフェース
MessageGroupStore
のiterator
- オーバーライド:
- クラス
AbstractConfigurableMongoDbMessageStore
のiterator
- 戻り値:
- 現在累積されている
MessageGroup
の反復子。
getMessageCountForAllMessageGroups
インターフェースからコピーされた説明:MessageGroupStore
すべてのグループにわたるストア内のメッセージの数を示すオプションの属性。実装は、例外をスローすることによって応答を拒否する場合があります。- 次で指定:
- インターフェース
MessageGroupStore
のgetMessageCountForAllMessageGroups
- オーバーライド:
- クラス
AbstractMessageGroupStore
のgetMessageCountForAllMessageGroups
- 戻り値:
- メッセージの数
getMessageGroupCount
インターフェースからコピーされた説明:MessageGroupStore
メッセージグループの数を示すオプションの属性。実装は、例外をスローすることによって応答を拒否する場合があります。- 次で指定:
- インターフェース
MessageGroupStore
のgetMessageGroupCount
- オーバーライド:
- クラス
AbstractMessageGroupStore
のgetMessageGroupCount
- 戻り値:
- メッセージグループの数
getOneMessageFromGroup
インターフェースからコピーされた説明:MessageGroupStore
MessageGroup
から 1 つのMessage
を返します。- 次で指定:
- インターフェース
MessageGroupStore
のgetOneMessageFromGroup
- オーバーライド:
- クラス
AbstractConfigurableMongoDbMessageStore
のgetOneMessageFromGroup
- パラメーター:
groupId
- グループ識別子。- 戻り値:
Message
getMessagesForGroup
インターフェースからコピーされた説明:MessageGroupStore
指定されたグループ ID のメッセージを取得します。- 次で指定:
- インターフェース
MessageGroupStore
のgetMessagesForGroup
- オーバーライド:
- クラス
AbstractConfigurableMongoDbMessageStore
のgetMessagesForGroup
- パラメーター:
groupId
- メッセージを取得するグループ ID。- 戻り値:
- グループのメッセージ。
streamMessagesForGroup
インターフェースからコピーされた説明:MessageGroupStore
指定されたグループに保存されているメッセージのストリームを返します。永続的な実装は、完全に処理されたら閉じる必要があるストリームを返します(たとえば、try-with-resources 句を使用)。デフォルトでは、MessageGroupStore.getMessagesForGroup(Object)
の結果をストリーミングします。- 次で指定:
- インターフェース
MessageGroupStore
のstreamMessagesForGroup
- パラメーター:
groupId
- メッセージを取得するためのグループ ID。- 戻り値:
- このグループのメッセージの
Stream
SE。