public class SimpleMessageGroup extends Object implements MessageGroup
MessageStore and group id. The
group will grow during its lifetime, when messages are added to it. This MessageGroup is thread safe.| Modifier and Type | Field and Description |
|---|---|
BlockingQueue<Message<?>> |
messages |
| Constructor and Description |
|---|
SimpleMessageGroup(Collection<? extends Message<?>> messages,
Object groupId) |
SimpleMessageGroup(Collection<? extends Message<?>> messages,
Object groupId,
long timestamp,
boolean complete) |
SimpleMessageGroup(MessageGroup messageGroup) |
SimpleMessageGroup(Object groupId) |
| Modifier and Type | Method and Description |
|---|---|
void |
add(Message<?> message) |
boolean |
canAdd(Message<?> message)
Query if the message can be added.
|
void |
clear() |
void |
complete()
Complete the group.
|
Object |
getGroupId() |
long |
getLastModified() |
int |
getLastReleasedMessageSequenceNumber() |
Collection<Message<?>> |
getMessages()
Returns all available Messages from the group at the time of invocation
|
Message<?> |
getOne() |
int |
getSequenceSize() |
long |
getTimestamp() |
boolean |
isComplete() |
boolean |
remove(Message<?> message) |
void |
setLastModified(long lastModified) |
void |
setLastReleasedMessageSequenceNumber(int sequenceNumber) |
int |
size() |
String |
toString() |
public final BlockingQueue<Message<?>> messages
public SimpleMessageGroup(Object groupId)
public SimpleMessageGroup(Collection<? extends Message<?>> messages, Object groupId)
public SimpleMessageGroup(Collection<? extends Message<?>> messages, Object groupId, long timestamp, boolean complete)
public SimpleMessageGroup(MessageGroup messageGroup)
public long getTimestamp()
getTimestamp in interface MessageGrouppublic void setLastModified(long lastModified)
public long getLastModified()
getLastModified in interface MessageGrouppublic boolean canAdd(Message<?> message)
MessageGroupcanAdd in interface MessageGroupmessage - The message.public void add(Message<?> message)
public boolean remove(Message<?> message)
public int getLastReleasedMessageSequenceNumber()
getLastReleasedMessageSequenceNumber in interface MessageGrouppublic Collection<Message<?>> getMessages()
MessageGroupgetMessages in interface MessageGrouppublic void setLastReleasedMessageSequenceNumber(int sequenceNumber)
public Object getGroupId()
getGroupId in interface MessageGrouppublic boolean isComplete()
isComplete in interface MessageGrouppublic void complete()
MessageGroupcomplete in interface MessageGrouppublic int getSequenceSize()
getSequenceSize in interface MessageGrouppublic int size()
size in interface MessageGrouppublic Message<?> getOne()
getOne in interface MessageGrouppublic void clear()