|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.springframework.integration.store.AbstractMessageGroupStore org.springframework.integration.mongodb.store.MongoDbMessageStore
public class MongoDbMessageStore
An implementation of both the MessageStore
and MessageGroupStore
strategies that relies upon MongoDB for persistence.
Field Summary |
---|
Fields inherited from class org.springframework.integration.store.AbstractMessageGroupStore |
---|
logger |
Constructor Summary | |
---|---|
MongoDbMessageStore(org.springframework.data.mongodb.MongoDbFactory mongoDbFactory)
Create a MongoDbMessageStore using the provided MongoDbFactory .and the default collection name. |
|
MongoDbMessageStore(org.springframework.data.mongodb.MongoDbFactory mongoDbFactory,
java.lang.String collectionName)
Create a MongoDbMessageStore using the provided MongoDbFactory and collection name. |
Method Summary | ||
---|---|---|
|
addMessage(Message<T> message)
Put the provided Message into the MessageStore. |
|
MessageGroup |
addMessageToGroup(java.lang.Object groupId,
Message<?> message)
Store a message with an association to a group id. |
|
void |
completeGroup(java.lang.Object groupId)
Completes this MessageGroup. |
|
Message<?> |
getMessage(java.util.UUID id)
Return the Message with the given id, or null if no Message with that id exists in the MessageStore. |
|
long |
getMessageCount()
Optional attribute giving the number of messages in the store. |
|
MessageGroup |
getMessageGroup(java.lang.Object groupId)
Return all Messages currently in the MessageStore that were stored using MessageGroupStore.addMessageToGroup(Object, Message) with this group id. |
|
java.util.Iterator<MessageGroup> |
iterator()
Returns the iterator of currently accumulated MessageGroup s |
|
Message<?> |
pollMessageFromGroup(java.lang.Object groupId)
Polls Message from this MessageGroup (in FIFO style if supported by the implementation)
while also removing the polled Message |
|
Message<?> |
removeMessage(java.util.UUID id)
Remove the Message with the given id from the MessageStore, if present, and return it. |
|
MessageGroup |
removeMessageFromGroup(java.lang.Object groupId,
Message<?> messageToRemove)
Persist a deletion on a single message from the group. |
|
void |
removeMessageGroup(java.lang.Object groupId)
Remove the message group with this id. |
|
void |
setBeanClassLoader(java.lang.ClassLoader classLoader)
|
|
void |
setLastReleasedSequenceNumberForGroup(java.lang.Object groupId,
int sequenceNumber)
Allows you to set the sequence number of the last released Message. |
Methods inherited from class org.springframework.integration.store.AbstractMessageGroupStore |
---|
expireMessageGroups, getMessageCountForAllMessageGroups, getMessageGroupCount, isTimeoutOnIdle, registerMessageGroupExpiryCallback, setExpiryCallbacks, setTimeoutOnIdle |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public MongoDbMessageStore(org.springframework.data.mongodb.MongoDbFactory mongoDbFactory)
MongoDbFactory
.and the default collection name.
public MongoDbMessageStore(org.springframework.data.mongodb.MongoDbFactory mongoDbFactory, java.lang.String collectionName)
MongoDbFactory
and collection name.
Method Detail |
---|
public void setBeanClassLoader(java.lang.ClassLoader classLoader)
setBeanClassLoader
in interface BeanClassLoaderAware
public <T> Message<T> addMessage(Message<T> message)
MessageStore
MessageStore.getMessage(UUID)
and MessageStore.removeMessage(UUID)
behave properly. Since messages are
immutable, putting the same message more than once is a no-op.
addMessage
in interface MessageStore
public Message<?> getMessage(java.util.UUID id)
MessageStore
getMessage
in interface MessageStore
@ManagedAttribute public long getMessageCount()
MessageStore
getMessageCount
in interface MessageStore
public Message<?> removeMessage(java.util.UUID id)
MessageStore
removeMessage
in interface MessageStore
public MessageGroup getMessageGroup(java.lang.Object groupId)
MessageGroupStore
MessageGroupStore.addMessageToGroup(Object, Message)
with this group id.
getMessageGroup
in interface MessageGroupStore
public MessageGroup addMessageToGroup(java.lang.Object groupId, Message<?> message)
MessageGroupStore
addMessageToGroup
in interface MessageGroupStore
groupId
- the group id to store the message undermessage
- a messagepublic MessageGroup removeMessageFromGroup(java.lang.Object groupId, Message<?> messageToRemove)
MessageGroupStore
removeMessageFromGroup
in interface MessageGroupStore
groupId
- the groupId for the group containing the messagemessageToRemove
- the message to be removedpublic void removeMessageGroup(java.lang.Object groupId)
MessageGroupStore
removeMessageGroup
in interface MessageGroupStore
groupId
- the id of the group to removepublic java.util.Iterator<MessageGroup> iterator()
MessageGroupStore
MessageGroup
s
iterator
in interface java.lang.Iterable<MessageGroup>
iterator
in interface MessageGroupStore
public void completeGroup(java.lang.Object groupId)
MessageGroupStore
completeGroup
in interface MessageGroupStore
public void setLastReleasedSequenceNumberForGroup(java.lang.Object groupId, int sequenceNumber)
MessageGroupStore
setLastReleasedSequenceNumberForGroup
in interface MessageGroupStore
public Message<?> pollMessageFromGroup(java.lang.Object groupId)
MessageGroupStore
MessageGroup
(in FIFO style if supported by the implementation)
while also removing the polled Message
pollMessageFromGroup
in interface MessageGroupStore
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |