Class ConfigurableMongoDbMessageStore
java.lang.Object
org.springframework.integration.store.AbstractBatchingMessageGroupStore
org.springframework.integration.store.AbstractMessageGroupStore
org.springframework.integration.mongodb.store.AbstractConfigurableMongoDbMessageStore
org.springframework.integration.mongodb.store.ConfigurableMongoDbMessageStore
- All Implemented Interfaces:
java.lang.Iterable<org.springframework.integration.store.MessageGroup>,org.springframework.beans.factory.Aware,org.springframework.beans.factory.InitializingBean,org.springframework.context.ApplicationContextAware,org.springframework.integration.store.BasicMessageGroupStore,org.springframework.integration.store.MessageGroupStore,org.springframework.integration.store.MessageStore
public class ConfigurableMongoDbMessageStore extends AbstractConfigurableMongoDbMessageStore implements org.springframework.integration.store.MessageStore
An alternate MongoDB
MessageStore and
MessageGroupStore which allows the user to
configure the instance of MongoTemplate. The mechanism of storing the messages/group of messages
in the store is and is different from MongoDbMessageStore. Since the store uses serialization of the
messages by default, all the headers, and the payload of the Message must implement Serializable
interface- Since:
- 3.0
-
Nested Class Summary
-
Field Summary
Fields Modifier and Type Field Description static java.lang.StringDEFAULT_COLLECTION_NAMEFields inherited from class org.springframework.integration.mongodb.store.AbstractConfigurableMongoDbMessageStore
collectionName, logger, mongoDbFactory, SEQUENCE_NAME -
Constructor Summary
Constructors Constructor Description ConfigurableMongoDbMessageStore(org.springframework.data.mongodb.core.MongoTemplate mongoTemplate)ConfigurableMongoDbMessageStore(org.springframework.data.mongodb.core.MongoTemplate mongoTemplate, java.lang.String collectionName)ConfigurableMongoDbMessageStore(org.springframework.data.mongodb.MongoDatabaseFactory mongoDbFactory)ConfigurableMongoDbMessageStore(org.springframework.data.mongodb.MongoDatabaseFactory mongoDbFactory, java.lang.String collectionName)ConfigurableMongoDbMessageStore(org.springframework.data.mongodb.MongoDatabaseFactory mongoDbFactory, org.springframework.data.mongodb.core.convert.MappingMongoConverter mappingMongoConverter)ConfigurableMongoDbMessageStore(org.springframework.data.mongodb.MongoDatabaseFactory mongoDbFactory, org.springframework.data.mongodb.core.convert.MappingMongoConverter mappingMongoConverter, java.lang.String collectionName) -
Method Summary
Modifier and Type Method Description <T> org.springframework.messaging.Message<T>addMessage(org.springframework.messaging.Message<T> message)voidaddMessagesToGroup(java.lang.Object groupId, org.springframework.messaging.Message<?>... messages)org.springframework.integration.store.MessageGroupaddMessageToGroup(java.lang.Object groupId, org.springframework.messaging.Message<?> message)voidcompleteGroup(java.lang.Object groupId)longgetMessageCount()intgetMessageCountForAllMessageGroups()org.springframework.integration.store.MessageGroupgetMessageGroup(java.lang.Object groupId)intgetMessageGroupCount()java.util.Collection<org.springframework.messaging.Message<?>>getMessagesForGroup(java.lang.Object groupId)org.springframework.messaging.Message<?>getOneMessageFromGroup(java.lang.Object groupId)java.util.Iterator<org.springframework.integration.store.MessageGroup>iterator()org.springframework.messaging.Message<?>pollMessageFromGroup(java.lang.Object groupId)org.springframework.messaging.Message<?>removeMessage(java.util.UUID id)voidremoveMessagesFromGroup(java.lang.Object groupId, java.util.Collection<org.springframework.messaging.Message<?>> messages)voidsetLastReleasedSequenceNumberForGroup(java.lang.Object groupId, int sequenceNumber)java.util.stream.Stream<org.springframework.messaging.Message<?>>streamMessagesForGroup(java.lang.Object groupId)Methods inherited from class org.springframework.integration.mongodb.store.AbstractConfigurableMongoDbMessageStore
addMessageDocument, afterPropertiesSet, getApplicationContext, getMappingMongoConverter, getMessage, getMessageBuilderFactory, getMessageMetadata, getMongoTemplate, getNextId, groupIdQuery, messageGroupSize, removeMessageGroup, setApplicationContextMethods inherited from class org.springframework.integration.store.AbstractMessageGroupStore
copy, expireMessageGroups, getGroupMetadata, getMessageGroupFactory, isTimeoutOnIdle, registerMessageGroupExpiryCallback, removeMessagesFromGroup, setExpiryCallbacks, setLazyLoadMessageGroups, setTimeoutOnIdleMethods inherited from class org.springframework.integration.store.AbstractBatchingMessageGroupStore
getRemoveBatchSize, setMessageGroupFactory, setRemoveBatchSize
-
Field Details
-
DEFAULT_COLLECTION_NAME
public static final java.lang.String DEFAULT_COLLECTION_NAME- See Also:
- Constant Field Values
-
-
Constructor Details
-
ConfigurableMongoDbMessageStore
public ConfigurableMongoDbMessageStore(org.springframework.data.mongodb.core.MongoTemplate mongoTemplate) -
ConfigurableMongoDbMessageStore
public ConfigurableMongoDbMessageStore(org.springframework.data.mongodb.core.MongoTemplate mongoTemplate, java.lang.String collectionName) -
ConfigurableMongoDbMessageStore
public ConfigurableMongoDbMessageStore(org.springframework.data.mongodb.MongoDatabaseFactory mongoDbFactory) -
ConfigurableMongoDbMessageStore
public ConfigurableMongoDbMessageStore(org.springframework.data.mongodb.MongoDatabaseFactory mongoDbFactory, org.springframework.data.mongodb.core.convert.MappingMongoConverter mappingMongoConverter) -
ConfigurableMongoDbMessageStore
public ConfigurableMongoDbMessageStore(org.springframework.data.mongodb.MongoDatabaseFactory mongoDbFactory, java.lang.String collectionName) -
ConfigurableMongoDbMessageStore
public ConfigurableMongoDbMessageStore(org.springframework.data.mongodb.MongoDatabaseFactory mongoDbFactory, org.springframework.data.mongodb.core.convert.MappingMongoConverter mappingMongoConverter, java.lang.String collectionName)
-
-
Method Details
-
addMessage
public <T> org.springframework.messaging.Message<T> addMessage(org.springframework.messaging.Message<T> message)- Specified by:
addMessagein interfaceorg.springframework.integration.store.MessageStore
-
removeMessage
public org.springframework.messaging.Message<?> removeMessage(java.util.UUID id)- Specified by:
removeMessagein interfaceorg.springframework.integration.store.MessageStore
-
getMessageCount
public long getMessageCount()- Specified by:
getMessageCountin interfaceorg.springframework.integration.store.MessageStore
-
getMessageGroup
public org.springframework.integration.store.MessageGroup getMessageGroup(java.lang.Object groupId)- Specified by:
getMessageGroupin interfaceorg.springframework.integration.store.BasicMessageGroupStore
-
addMessageToGroup
public org.springframework.integration.store.MessageGroup addMessageToGroup(java.lang.Object groupId, org.springframework.messaging.Message<?> message)- Specified by:
addMessageToGroupin interfaceorg.springframework.integration.store.BasicMessageGroupStore- Overrides:
addMessageToGroupin classorg.springframework.integration.store.AbstractMessageGroupStore
-
addMessagesToGroup
public void addMessagesToGroup(java.lang.Object groupId, org.springframework.messaging.Message<?>... messages)- Specified by:
addMessagesToGroupin interfaceorg.springframework.integration.store.MessageGroupStore- Overrides:
addMessagesToGroupin classAbstractConfigurableMongoDbMessageStore
-
removeMessagesFromGroup
public void removeMessagesFromGroup(java.lang.Object groupId, java.util.Collection<org.springframework.messaging.Message<?>> messages)- Specified by:
removeMessagesFromGroupin interfaceorg.springframework.integration.store.MessageGroupStore- Overrides:
removeMessagesFromGroupin classAbstractConfigurableMongoDbMessageStore
-
pollMessageFromGroup
public org.springframework.messaging.Message<?> pollMessageFromGroup(java.lang.Object groupId)- Specified by:
pollMessageFromGroupin interfaceorg.springframework.integration.store.BasicMessageGroupStore
-
setLastReleasedSequenceNumberForGroup
public void setLastReleasedSequenceNumberForGroup(java.lang.Object groupId, int sequenceNumber)- Specified by:
setLastReleasedSequenceNumberForGroupin interfaceorg.springframework.integration.store.MessageGroupStore- Overrides:
setLastReleasedSequenceNumberForGroupin classAbstractConfigurableMongoDbMessageStore
-
completeGroup
public void completeGroup(java.lang.Object groupId)- Specified by:
completeGroupin interfaceorg.springframework.integration.store.MessageGroupStore- Overrides:
completeGroupin classAbstractConfigurableMongoDbMessageStore
-
iterator
public java.util.Iterator<org.springframework.integration.store.MessageGroup> iterator()- Specified by:
iteratorin interfacejava.lang.Iterable<org.springframework.integration.store.MessageGroup>- Specified by:
iteratorin interfaceorg.springframework.integration.store.MessageGroupStore- Overrides:
iteratorin classAbstractConfigurableMongoDbMessageStore
-
getMessageCountForAllMessageGroups
@ManagedAttribute public int getMessageCountForAllMessageGroups()- Specified by:
getMessageCountForAllMessageGroupsin interfaceorg.springframework.integration.store.MessageGroupStore- Overrides:
getMessageCountForAllMessageGroupsin classorg.springframework.integration.store.AbstractMessageGroupStore
-
getMessageGroupCount
@ManagedAttribute public int getMessageGroupCount()- Specified by:
getMessageGroupCountin interfaceorg.springframework.integration.store.MessageGroupStore- Overrides:
getMessageGroupCountin classorg.springframework.integration.store.AbstractMessageGroupStore
-
getOneMessageFromGroup
public org.springframework.messaging.Message<?> getOneMessageFromGroup(java.lang.Object groupId)- Specified by:
getOneMessageFromGroupin interfaceorg.springframework.integration.store.MessageGroupStore- Overrides:
getOneMessageFromGroupin classAbstractConfigurableMongoDbMessageStore
-
getMessagesForGroup
public java.util.Collection<org.springframework.messaging.Message<?>> getMessagesForGroup(java.lang.Object groupId)- Specified by:
getMessagesForGroupin interfaceorg.springframework.integration.store.MessageGroupStore- Overrides:
getMessagesForGroupin classAbstractConfigurableMongoDbMessageStore
-
streamMessagesForGroup
public java.util.stream.Stream<org.springframework.messaging.Message<?>> streamMessagesForGroup(java.lang.Object groupId)- Specified by:
streamMessagesForGroupin interfaceorg.springframework.integration.store.MessageGroupStore
-