クラス MongoDbMessageStore
java.lang.ObjectSE
org.springframework.integration.store.AbstractBatchingMessageGroupStore
org.springframework.integration.store.AbstractMessageGroupStore
org.springframework.integration.mongodb.store.MongoDbMessageStore
- 実装されているすべてのインターフェース:
IterableSE<MessageGroup>、Aware、BeanClassLoaderAware、InitializingBean、ApplicationContextAware、BasicMessageGroupStore、MessageGroupStore、MessageStore
public class MongoDbMessageStore extends AbstractMessageGroupStore implements MessageStore, BeanClassLoaderAware, ApplicationContextAware, InitializingBean
永続性を MongoDB に依存する
MessageStore 戦略と MessageGroupStore 戦略の両方の実装。- 導入:
- 2.1
- 作成者:
- Mark Fisher, Oleg Zhurakousky, Sean Brandt, Jodie StJohn, Gary Russell, Artem Bilan
ネストされたクラスの要約
インターフェース org.springframework.integration.store.MessageGroupStore から継承されたネストクラス / インターフェース
MessageGroupStore.MessageGroupCallbackフィールドのサマリー
フィールド 修飾子と型 フィールド 説明 static StringSESEQUENCE_NAMEコンストラクターの概要
コンストラクター コンストラクター 説明 MongoDbMessageStore(MongoDatabaseFactory mongoDbFactory)提供されたMongoDatabaseFactoryとデフォルトのコレクション名を使用して MongoDbMessageStore を作成します。MongoDbMessageStore(MongoDatabaseFactory mongoDbFactory, StringSE collectionName)提供されたMongoDatabaseFactoryとコレクション名を使用して MongoDbMessageStore を作成します。メソッドのサマリー
修飾子と型 メソッド 説明 voidaddAllowedPatterns(StringSE... patterns)逆直列化が許可されているパッケージ / クラスのパターンを追加します。<T> Message<T>addMessage(Message<T> message)提供されたメッセージを MessageStore に入れます。voidaddMessagesToGroup(ObjectSE groupId, Message<?>... messages)グループ ID に関連付けてメッセージを保存します。voidafterPropertiesSet()voidcompleteGroup(ObjectSE groupId)この MessageGroup を完成させます。Message<?>getMessage(UUIDSE id)longgetMessageCount()ストア内のメッセージ数を示すオプションの属性。intgetMessageCountForAllMessageGroups()すべてのグループにわたるストア内のメッセージの数を示すオプションの属性。MessageGroupgetMessageGroup(ObjectSE groupId)このグループ ID でBasicMessageGroupStore.addMessageToGroup(Object, Message)を使用して保存された、現在 MessageStore にあるすべてのメッセージを返します。intgetMessageGroupCount()メッセージグループの数を示すオプションの属性。MessageMetadatagetMessageMetadata(UUIDSE id)CollectionSE<Message<?>>getMessagesForGroup(ObjectSE groupId)指定されたグループ ID のメッセージを取得します。Message<?>getOneMessageFromGroup(ObjectSE groupId)MessageGroupから 1 つのMessageを返します。IteratorSE<MessageGroup>iterator()intmessageGroupSize(ObjectSE groupId)この MessageGroup のサイズを返します。Message<?>pollMessageFromGroup(ObjectSE groupId)このMessageGroupからのメッセージのポーリング(実装でサポートされている場合は FIFO スタイル)と同時に、ポーリングされたMessageも削除します。Message<?>removeMessage(UUIDSE id)指定された ID のメッセージを MessageStore から削除し(存在する場合)、それを返します。voidremoveMessageGroup(ObjectSE groupId)この ID のメッセージグループを削除します。voidremoveMessagesFromGroup(ObjectSE groupId, CollectionSE<Message<?>> messages)グループからのメッセージの削除を永続化します。voidsetApplicationContext(ApplicationContext applicationContext)voidsetBeanClassLoader(ClassLoaderSE classLoader)voidsetCustomConverters(ObjectSE... customConverters)MappingMongoConverterで使用するコンバーターのセットを構成します。voidsetGroupCondition(ObjectSE groupId, StringSE condition)グループに条件文を追加します。voidsetLastReleasedSequenceNumberForGroup(ObjectSE groupId, int sequenceNumber)最後にリリースされたメッセージのシーケンス番号を設定できます。StreamSE<Message<?>>streamMessagesForGroup(ObjectSE groupId)指定されたグループに保存されているメッセージのストリームを返します。クラス org.springframework.integration.store.AbstractMessageGroupStore から継承されたメソッド
addMessageToGroup, copy, expireMessageGroups, getGroupMetadata, getMessageGroupFactory, isTimeoutOnIdle, registerMessageGroupExpiryCallback, removeMessagesFromGroup, setExpiryCallbacks, setLazyLoadMessageGroups, setTimeoutOnIdleクラス org.springframework.integration.store.AbstractBatchingMessageGroupStore から継承されたメソッド
getRemoveBatchSize, setMessageGroupFactory, setRemoveBatchSize
フィールドの詳細
SEQUENCE_NAME
- 関連事項:
- 定数フィールド値
コンストラクターの詳細
MongoDbMessageStore
提供されたMongoDatabaseFactoryとデフォルトのコレクション名を使用して MongoDbMessageStore を作成します。- パラメーター:
mongoDbFactory- mongodb ファクトリ。
MongoDbMessageStore
提供されたMongoDatabaseFactoryとコレクション名を使用して MongoDbMessageStore を作成します。- パラメーター:
mongoDbFactory- mongodb ファクトリ。collectionName- コレクション名。
メソッドの詳細
setBeanClassLoader
- 次で指定:
- インターフェース
BeanClassLoaderAwareのsetBeanClassLoader
setApplicationContext
- 次で指定:
- インターフェース
ApplicationContextAwareのsetApplicationContext - 例外:
BeansException
addAllowedPatterns
逆直列化できるパッケージ / クラスのパターンを追加します。クラスは完全修飾することも、クラス名の最初または最後にワイルドカード "*" を使用することもできます。例:com.foo.*、*.MyClass。- パラメーター:
patterns- パターン。- 導入:
- 5.4
setCustomConverters
MappingMongoConverterで使用するコンバーターのセットを構成します。org.springframework.core.convert.converter.Converter、org.springframework.core.convert.converter.ConverterFactory、org.springframework.core.convert.converter.GenericConverterまたはorg.springframework.data.convert.ConverterBuilder.ConverterAwareのインスタンスである必要があります。- パラメーター:
customConverters- 使用するコンバーター。- 導入:
- 5.1.6
afterPropertiesSet
public void afterPropertiesSet()- 次で指定:
- インターフェース
InitializingBeanのafterPropertiesSet
addMessage
インターフェースからコピーされた説明:MessageStore提供されたメッセージを MessageStore に入れます。ストアはメッセージを内部で変更する必要がある場合があり、その場合、戻り値は入力と異なる場合があります。戻り値の ID は、MessageStore.getMessage(UUID)およびMessageStore.removeMessage(UUID)が正しく動作するようにインデックスとして使用されます。メッセージは不変であるため、同じメッセージを複数回入力しても何も起こりません。- 次で指定:
- インターフェース
MessageStoreのaddMessage - 型パラメーター:
T- ペイロード型。- パラメーター:
message- メッセージ。- 戻り値:
- 保存されたメッセージ。
getMessage
- 次で指定:
- インターフェース
MessageStoreのgetMessage - パラメーター:
id- メッセージ識別子。- 戻り値:
- 指定された ID のメッセージ。MessageStore にその ID のメッセージが存在しない場合は null。
getMessageMetadata
インターフェースからコピーされた説明:MessageStore- 次で指定:
- インターフェース
MessageStoreのgetMessageMetadata - パラメーター:
id- メッセージ識別子。- 戻り値:
- 指定された ID の MessageMetadata、またはその ID のメッセージが MessageStore に存在しないか、メッセージにメタデータがない場合(以前のバージョンのレガシーメッセージ)は null。
getMessageCount
インターフェースからコピーされた説明:MessageStoreストア内のメッセージ数を示すオプションの属性。実装は例外をスローすることで応答を拒否する場合があります。- 次で指定:
- インターフェース
MessageStoreのgetMessageCount - 戻り値:
- メッセージの数。
removeMessage
インターフェースからコピーされた説明:MessageStore指定された ID のメッセージを MessageStore から削除し(存在する場合)、それを返します。その ID のメッセージがストアに存在しない場合、これは null を返します。- 次で指定:
- インターフェース
MessageStoreのremoveMessage - パラメーター:
id- メッセージ識別子。- 戻り値:
- メッセージ。
getMessageGroup
インターフェースからコピーされた説明:BasicMessageGroupStoreこのグループ ID でBasicMessageGroupStore.addMessageToGroup(Object, Message)を使用して保存された、現在 MessageStore にあるすべてのメッセージを返します。- 次で指定:
- インターフェース
BasicMessageGroupStoreのgetMessageGroup - パラメーター:
groupId- グループ識別子。- 戻り値:
- メッセージのグループ。このキーにメッセージが存在しない場合は空です。
addMessagesToGroup
インターフェースからコピーされた説明:MessageGroupStoreグループ ID に関連付けてメッセージを保存します。これは、メッセージをグループ化するために使用できます。- 次で指定:
- インターフェース
MessageGroupStoreのaddMessagesToGroup - パラメーター:
groupId- メッセージを保存するグループ ID。messages- 追加するメッセージ。
removeMessagesFromGroup
インターフェースからコピーされた説明:MessageGroupStoreグループからのメッセージの削除を永続化します。- 次で指定:
- インターフェース
MessageGroupStoreのremoveMessagesFromGroup - パラメーター:
groupId- メッセージを含むグループの groupId。messages- 削除するメッセージ。
removeMessageGroup
インターフェースからコピーされた説明:BasicMessageGroupStoreこの ID のメッセージグループを削除します。- 次で指定:
- インターフェース
BasicMessageGroupStoreのremoveMessageGroup - パラメーター:
groupId- 削除するグループの ID。
iterator
- 次で指定:
- インターフェース
IterableSE<MessageGroup>のiterator - 次で指定:
- インターフェース
MessageGroupStoreのiterator - 戻り値:
- 現在累積されている
MessageGroupの反復子。
pollMessageFromGroup
インターフェースからコピーされた説明:BasicMessageGroupStoreこのMessageGroupからのメッセージのポーリング(実装でサポートされている場合は FIFO スタイル)と同時に、ポーリングされたMessageも削除します。- 次で指定:
- インターフェース
BasicMessageGroupStoreのpollMessageFromGroup - パラメーター:
groupId- グループ識別子。- 戻り値:
- メッセージ。
messageGroupSize
インターフェースからコピーされた説明:BasicMessageGroupStoreこの MessageGroup のサイズを返します。- 次で指定:
- インターフェース
BasicMessageGroupStoreのmessageGroupSize - パラメーター:
groupId- グループ識別子。- 戻り値:
- サイズ。
setGroupCondition
インターフェースからコピーされた説明:MessageGroupStoreグループに条件文を追加します。後でグループの意思決定に使用できます。相関ハンドラーのリリース戦略では、グループ内のすべてのメッセージを繰り返す代わりに、この条件を調べることができます。- 次で指定:
- インターフェース
MessageGroupStoreのsetGroupCondition - パラメーター:
groupId- グループ識別子。condition- グループに保存する条件。
setLastReleasedSequenceNumberForGroup
インターフェースからコピーされた説明:MessageGroupStore最後にリリースされたメッセージのシーケンス番号を設定できます。ユースケースの並べ替えに使用- 次で指定:
- インターフェース
MessageGroupStoreのsetLastReleasedSequenceNumberForGroup - パラメーター:
groupId- グループ識別子。sequenceNumber- シーケンス番号。
completeGroup
インターフェースからコピーされた説明:MessageGroupStoreこの MessageGroup を完成させます。MessageGroup の補完は、一般に、このグループがこれ以上の変更操作を実行できないようにする必要があることを意味します。たとえば、グループから新しいメッセージを追加 / 削除しようとする試みは許可されるべきではありません。- 次で指定:
- インターフェース
MessageGroupStoreのcompleteGroup - パラメーター:
groupId- グループ識別子。
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。
getMessageCountForAllMessageGroups
インターフェースからコピーされた説明:MessageGroupStoreすべてのグループにわたるストア内のメッセージの数を示すオプションの属性。実装は、例外をスローすることによって応答を拒否する場合があります。- 次で指定:
- インターフェース
MessageGroupStoreのgetMessageCountForAllMessageGroups - オーバーライド:
- クラス
AbstractMessageGroupStoreのgetMessageCountForAllMessageGroups - 戻り値:
- メッセージの数
getMessageGroupCount
インターフェースからコピーされた説明:MessageGroupStoreメッセージグループの数を示すオプションの属性。実装は、例外をスローすることによって応答を拒否する場合があります。- 次で指定:
- インターフェース
MessageGroupStoreのgetMessageGroupCount - オーバーライド:
- クラス
AbstractMessageGroupStoreのgetMessageGroupCount - 戻り値:
- メッセージグループの数