クラス 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, IntegrationPattern, 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, Youbin Wu
ネストされたクラスの概要
インターフェース MessageGroupStore から継承されたネストクラス / インターフェース
MessageGroupStore.MessageGroupCallbackフィールド概要
フィールドクラス AbstractMessageGroupStore から継承されたフィールド
INTERRUPTED_WHILE_OBTAINING_LOCK, loggerコンストラクター概要
コンストラクターコンストラクター説明MongoDbMessageStore(MongoDatabaseFactory mongoDbFactory) 提供されたMongoDatabaseFactoryとデフォルトのコレクション名を使用して MongoDbMessageStore を作成します。MongoDbMessageStore(MongoDatabaseFactory mongoDbFactory, @Nullable StringSE collectionName) 提供されたMongoDatabaseFactoryとコレクション名を使用して MongoDbMessageStore を作成します。方法の概要
修飾子と型メソッド説明voidaddAllowedPatterns(StringSE @Nullable... patterns) 逆直列化が許可されているパッケージ / クラスのパターンを追加します。<T> Message<T> addMessage(Message<T> message) 提供されたメッセージを MessageStore に入れます。voidprotected voiddoAddMessagesToGroup(ObjectSE groupId, Message<?>... messages) protected voiddoCompleteGroup(ObjectSE groupId) protected @Nullable Message<?> doPollMessageFromGroup(ObjectSE groupId) protected booleandoRemoveMessageFromGroupById(ObjectSE groupId, UUIDSE messageId) protected voiddoRemoveMessageGroup(ObjectSE groupId) protected voiddoRemoveMessagesFromGroup(ObjectSE groupId, CollectionSE<Message<?>> messages) protected voiddoSetGroupCondition(ObjectSE groupId, StringSE condition) protected voiddoSetLastReleasedSequenceNumberForGroup(ObjectSE groupId, int sequenceNumber) @Nullable Message<?> getMessage(UUIDSE id) longストア内のメッセージ数を示すオプションの属性。intすべてのグループにわたるストア内のメッセージの数を示すオプションの属性。@Nullable Message<?> getMessageFromGroup(ObjectSE groupId, UUIDSE messageId) ID を使用してグループからMessageを取得します。getMessageGroup(ObjectSE groupId) このグループ ID でBasicMessageGroupStore.addMessageToGroup(Object, Message)を使用して保存された、現在 MessageStore にあるすべてのメッセージを返します。intメッセージグループの数を示すオプションの属性。@Nullable MessageMetadataCollectionSE<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 から削除し(存在する場合)、それを返します。voidsetApplicationContext(ApplicationContext applicationContext) voidsetBeanClassLoader(ClassLoaderSE classLoader) voidsetCustomConverters(ObjectSE... customConverters) MappingMongoConverterで使用するコンバーターのセットを構成します。streamMessagesForGroup(ObjectSE groupId) 指定されたグループに保存されているメッセージのストリームを返します。クラス AbstractMessageGroupStore から継承されたメソッド
addMessagesToGroup, addMessageToGroup, completeGroup, copy, executeLocked, executeLocked, expireMessageGroups, getLockRegistry, 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インターフェース MessageGroupStore から継承されたメソッド
getGroupMetadataインターフェース MessageStore から継承されたメソッド
getIntegrationPatternType
フィールドの詳細
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が返されます。このメソッドがMessageGroupStoreに実装されている場合、このメッセージを保持するグループがない場合にのみ、メッセージはストアから削除されます。- 次で指定:
- インターフェース
MessageStore内のremoveMessage - パラメーター:
id- メッセージ識別子。- 戻り値:
- メッセージ (ある場合)。
getMessageGroup
インターフェースからコピーされた説明:BasicMessageGroupStoreこのグループ ID でBasicMessageGroupStore.addMessageToGroup(Object, Message)を使用して保存された、現在 MessageStore にあるすべてのメッセージを返します。- 次で指定:
- インターフェース
BasicMessageGroupStore内のgetMessageGroup - パラメーター:
groupId- グループ識別子。- 戻り値:
- メッセージのグループ。このキーにメッセージが存在しない場合は空です。
doAddMessagesToGroup
- 次で指定:
- クラス
AbstractMessageGroupStoreのdoAddMessagesToGroup
doRemoveMessagesFromGroup
- 次で指定:
- クラス
AbstractMessageGroupStoreのdoRemoveMessagesFromGroup
getMessageFromGroup
インターフェースからコピーされた説明:MessageGroupStoreID を使用してグループからMessageを取得します。メッセージがリクエストされたグループに属していない場合は、nullを返します。- 次で指定:
- インターフェース
MessageGroupStore内のgetMessageFromGroup - パラメーター:
groupId- メッセージを含むグループの groupId。messageId- メッセージ ID。- 戻り値:
- リクエストされたグループに属している場合は、ID によるメッセージ。
doRemoveMessageFromGroupById
- オーバーライド:
- クラス
AbstractMessageGroupStoreのdoRemoveMessageFromGroupById
doRemoveMessageGroup
- 次で指定:
- クラス
AbstractMessageGroupStoreのdoRemoveMessageGroup
iterator
- 次で指定:
- インターフェース
IterableSE<MessageGroup>内のiterator - 次で指定:
- インターフェース
MessageGroupStore内のiterator - 戻り値:
- 現在累積されている
MessageGroupの反復子。
doPollMessageFromGroup
- 次で指定:
- クラス
AbstractMessageGroupStoreのdoPollMessageFromGroup
messageGroupSize
インターフェースからコピーされた説明:BasicMessageGroupStoreこの MessageGroup のサイズを返します。- 次で指定:
- インターフェース
BasicMessageGroupStore内のmessageGroupSize - パラメーター:
groupId- グループ識別子。- 戻り値:
- サイズ。
doSetGroupCondition
- 次で指定:
- クラス
AbstractMessageGroupStoreのdoSetGroupCondition
doSetLastReleasedSequenceNumberForGroup
doCompleteGroup
- 次で指定:
- クラス
AbstractMessageGroupStoreのdoCompleteGroup
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 - 戻り値:
- メッセージグループの数