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:
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
Nested classes/interfaces inherited from interface org.springframework.integration.store.MessageGroupStore
org.springframework.integration.store.MessageGroupStore.MessageGroupCallback -
Field Summary
FieldsFields inherited from class org.springframework.integration.mongodb.store.AbstractConfigurableMongoDbMessageStore
collectionName, logger, mongoDbFactory, SEQUENCE_NAMEFields inherited from class org.springframework.integration.store.AbstractMessageGroupStore
INTERRUPTED_WHILE_OBTAINING_LOCK -
Constructor Summary
ConstructorsConstructorDescriptionConfigurableMongoDbMessageStore(org.springframework.data.mongodb.core.MongoTemplate mongoTemplate) ConfigurableMongoDbMessageStore(org.springframework.data.mongodb.core.MongoTemplate mongoTemplate, String collectionName) ConfigurableMongoDbMessageStore(org.springframework.data.mongodb.MongoDatabaseFactory mongoDbFactory) ConfigurableMongoDbMessageStore(org.springframework.data.mongodb.MongoDatabaseFactory mongoDbFactory, 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, String collectionName) -
Method Summary
Modifier and TypeMethodDescription<T> org.springframework.messaging.Message<T>addMessage(org.springframework.messaging.Message<T> message) org.springframework.integration.store.MessageGroupaddMessageToGroup(Object groupId, org.springframework.messaging.Message<?> message) protected voiddoAddMessagesToGroup(Object groupId, org.springframework.messaging.Message<?>... messages) protected voiddoCompleteGroup(Object groupId) protected org.springframework.messaging.Message<?>doPollMessageFromGroup(Object groupId) protected booleandoRemoveMessageFromGroupById(Object groupId, UUID messageId) protected voiddoRemoveMessagesFromGroup(Object groupId, Collection<org.springframework.messaging.Message<?>> messages) protected voiddoSetGroupCondition(Object groupId, String condition) protected voiddoSetLastReleasedSequenceNumberForGroup(Object groupId, int sequenceNumber) longintorg.springframework.messaging.Message<?>getMessageFromGroup(Object groupId, UUID messageId) org.springframework.integration.store.MessageGroupgetMessageGroup(Object groupId) intCollection<org.springframework.messaging.Message<?>>getMessagesForGroup(Object groupId) org.springframework.messaging.Message<?>getOneMessageFromGroup(Object groupId) Iterator<org.springframework.integration.store.MessageGroup>iterator()org.springframework.messaging.Message<?>removeMessage(UUID id) Stream<org.springframework.messaging.Message<?>>streamMessagesForGroup(Object groupId) Methods inherited from class org.springframework.integration.mongodb.store.AbstractConfigurableMongoDbMessageStore
addMessageDocument, afterPropertiesSet, createIndexes, doRemoveMessageGroup, getApplicationContext, getMappingMongoConverter, getMessage, getMessageBuilderFactory, getMessageMetadata, getMongoTemplate, getNextId, groupIdQuery, messageGroupSize, setApplicationContext, setCreateIndexesMethods inherited from class org.springframework.integration.store.AbstractMessageGroupStore
addMessagesToGroup, completeGroup, copy, executeLocked, executeLocked, expireMessageGroups, getGroupMetadata, getLockRegistry, getMessageGroupFactory, isTimeoutOnIdle, pollMessageFromGroup, registerMessageGroupExpiryCallback, removeMessageFromGroupById, removeMessageGroup, removeMessagesFromGroup, removeMessagesFromGroup, setExpiryCallbacks, setGroupCondition, setLastReleasedSequenceNumberForGroup, setLazyLoadMessageGroups, setLockRegistry, setTimeoutOnIdleMethods inherited from class org.springframework.integration.store.AbstractBatchingMessageGroupStore
getRemoveBatchSize, setMessageGroupFactory, setRemoveBatchSizeMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface java.lang.Iterable
forEach, spliteratorMethods inherited from interface org.springframework.integration.store.MessageStore
getMessage, getMessageMetadata
-
Field Details
-
DEFAULT_COLLECTION_NAME
- See Also:
-
-
Constructor Details
-
ConfigurableMongoDbMessageStore
public ConfigurableMongoDbMessageStore(org.springframework.data.mongodb.core.MongoTemplate mongoTemplate) -
ConfigurableMongoDbMessageStore
public ConfigurableMongoDbMessageStore(org.springframework.data.mongodb.core.MongoTemplate mongoTemplate, 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, String collectionName) -
ConfigurableMongoDbMessageStore
public ConfigurableMongoDbMessageStore(org.springframework.data.mongodb.MongoDatabaseFactory mongoDbFactory, org.springframework.data.mongodb.core.convert.MappingMongoConverter mappingMongoConverter, 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
- Specified by:
removeMessagein interfaceorg.springframework.integration.store.MessageStore
-
getMessageCount
public long getMessageCount()- Specified by:
getMessageCountin interfaceorg.springframework.integration.store.MessageStore
-
getMessageGroup
- Specified by:
getMessageGroupin interfaceorg.springframework.integration.store.BasicMessageGroupStore
-
addMessageToGroup
public org.springframework.integration.store.MessageGroup addMessageToGroup(Object groupId, org.springframework.messaging.Message<?> message) - Specified by:
addMessageToGroupin interfaceorg.springframework.integration.store.BasicMessageGroupStore- Overrides:
addMessageToGroupin classorg.springframework.integration.store.AbstractMessageGroupStore
-
doAddMessagesToGroup
protected void doAddMessagesToGroup(Object groupId, org.springframework.messaging.Message<?>... messages) - Overrides:
doAddMessagesToGroupin classAbstractConfigurableMongoDbMessageStore
-
doRemoveMessagesFromGroup
protected void doRemoveMessagesFromGroup(Object groupId, Collection<org.springframework.messaging.Message<?>> messages) - Overrides:
doRemoveMessagesFromGroupin classAbstractConfigurableMongoDbMessageStore
-
getMessageFromGroup
@Nullable public org.springframework.messaging.Message<?> getMessageFromGroup(Object groupId, UUID messageId) - Specified by:
getMessageFromGroupin interfaceorg.springframework.integration.store.MessageGroupStore
-
doRemoveMessageFromGroupById
- Overrides:
doRemoveMessageFromGroupByIdin classorg.springframework.integration.store.AbstractMessageGroupStore
-
doPollMessageFromGroup
- Specified by:
doPollMessageFromGroupin classorg.springframework.integration.store.AbstractMessageGroupStore
-
doSetLastReleasedSequenceNumberForGroup
- Overrides:
doSetLastReleasedSequenceNumberForGroupin classAbstractConfigurableMongoDbMessageStore
-
doSetGroupCondition
- Overrides:
doSetGroupConditionin classAbstractConfigurableMongoDbMessageStore
-
doCompleteGroup
- Overrides:
doCompleteGroupin classAbstractConfigurableMongoDbMessageStore
-
iterator
- Specified by:
iteratorin interfaceIterable<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
- Specified by:
getOneMessageFromGroupin interfaceorg.springframework.integration.store.MessageGroupStore- Overrides:
getOneMessageFromGroupin classAbstractConfigurableMongoDbMessageStore
-
getMessagesForGroup
- Specified by:
getMessagesForGroupin interfaceorg.springframework.integration.store.MessageGroupStore- Overrides:
getMessagesForGroupin classAbstractConfigurableMongoDbMessageStore
-
streamMessagesForGroup
- Specified by:
streamMessagesForGroupin interfaceorg.springframework.integration.store.MessageGroupStore
-