|
|||||||||
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.store.SimpleMessageStore
@ManagedResource public class SimpleMessageStore
Map-based implementation of MessageStore
and MessageGroupStore
. Enforces a maximum capacity for the
store.
Field Summary |
---|
Fields inherited from class org.springframework.integration.store.AbstractMessageGroupStore |
---|
logger |
Constructor Summary | |
---|---|
SimpleMessageStore()
Creates a SimpleMessageStore with unlimited capacity |
|
SimpleMessageStore(int capacity)
Creates a SimpleMessageStore with the same capacity for individual and grouped messages. |
|
SimpleMessageStore(int individualCapacity,
int groupCapacity)
Creates a SimpleMessageStore with a maximum size limited by the given capacity, or unlimited size if the given capacity is less than 1. |
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. |
|
Message<?> |
getMessage(java.util.UUID key)
Return the Message with the given id, or null if no Message with that id exists in the MessageStore. |
|
int |
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()
|
|
MessageGroup |
markMessageFromGroup(java.lang.Object groupId,
Message<?> messageToMark)
Persist a mark on a single message from the group. |
|
MessageGroup |
markMessageGroup(MessageGroup group)
Persist the mark on all the messages from the group. |
|
Message<?> |
removeMessage(java.util.UUID key)
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. |
Methods inherited from class org.springframework.integration.store.AbstractMessageGroupStore |
---|
expireMessageGroups, getMarkedMessageCountForAllMessageGroups, getMessageCountForAllMessageGroups, getMessageGroupCount, registerMessageGroupExpiryCallback, setExpiryCallbacks |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface org.springframework.integration.store.MessageGroupStore |
---|
expireMessageGroups, getMarkedMessageCountForAllMessageGroups, getMessageCountForAllMessageGroups, getMessageGroupCount, registerMessageGroupExpiryCallback |
Constructor Detail |
---|
public SimpleMessageStore(int individualCapacity, int groupCapacity)
addMessage(Message)
and to those stored via addMessageToGroup(Object, Message)
. In both cases
the capacity applies to the number of messages that can be stored, and once that limit is reached attempting to
store another will result in an exception.
public SimpleMessageStore(int capacity)
public SimpleMessageStore()
Method Detail |
---|
@ManagedAttribute public int getMessageCount()
MessageStore
getMessageCount
in interface MessageStore
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 key)
MessageStore
getMessage
in interface MessageStore
public Message<?> removeMessage(java.util.UUID key)
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 markMessageGroup(MessageGroup group)
MessageGroupStore
markMessageGroup
in interface MessageGroupStore
group
- a MessageGroup with no unmarked messagespublic void removeMessageGroup(java.lang.Object groupId)
MessageGroupStore
removeMessageGroup
in interface MessageGroupStore
groupId
- the id of the group to removepublic 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 MessageGroup markMessageFromGroup(java.lang.Object groupId, Message<?> messageToMark)
MessageGroupStore
markMessageFromGroup
in interface MessageGroupStore
groupId
- the groupId for the group containing the messagemessageToMark
- the message to be markedpublic java.util.Iterator<MessageGroup> iterator()
iterator
in interface java.lang.Iterable<MessageGroup>
iterator
in class AbstractMessageGroupStore
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |