org.apache.activemq.store.kahadaptor
public class KahaMessageStore extends AbstractMessageStore
MessageStore
which
uses a JPS ContainerModifier and Type | Field and Description |
---|---|
protected StoreEntry |
batchEntry |
protected MapContainer<MessageId,Message> |
messageContainer |
destination, FUTURE, prioritizedMessages
Constructor and Description |
---|
KahaMessageStore(MapContainer<MessageId,Message> container,
ActiveMQDestination destination) |
Modifier and Type | Method and Description |
---|---|
void |
addMessage(ConnectionContext context,
Message message)
Adds a message to the message store
|
void |
delete() |
java.lang.Object |
getId() |
Message |
getMessage(MessageId identity)
Looks up a message using either the String messageID or the
messageNumber.
|
int |
getMessageCount() |
protected MessageId |
getMessageId(java.lang.Object object) |
MessageId |
getPreviousMessageIdToDeliver(MessageId id) |
boolean |
isSupportForCursors() |
void |
recover(MessageRecoveryListener listener)
Recover any messages to be delivered.
|
protected boolean |
recoverMessage(MessageRecoveryListener listener,
Message msg) |
void |
recoverNextMessages(int maxReturned,
MessageRecoveryListener listener) |
void |
removeAllMessages(ConnectionContext context)
Removes all the messages from the message store.
|
void |
removeMessage(ConnectionContext context,
MessageAck ack)
Removes a message from the message store.
|
void |
removeMessage(MessageId msgId) |
void |
resetBatching()
A hint to the Store to reset any batching state for the Destination
|
void |
setBatch(MessageId messageId)
allow caching cursors to set the current batch offset when cache is exhausted
|
addMessage, asyncAddQueueMessage, asyncAddQueueMessage, asyncAddTopicMessage, asyncAddTopicMessage, dispose, getDestination, isEmpty, isPrioritizedMessages, removeAsyncMessage, setMemoryUsage, setPrioritizedMessages, start, stop
protected final MapContainer<MessageId,Message> messageContainer
protected StoreEntry batchEntry
public KahaMessageStore(MapContainer<MessageId,Message> container, ActiveMQDestination destination) throws java.io.IOException
java.io.IOException
protected MessageId getMessageId(java.lang.Object object)
public java.lang.Object getId()
public void addMessage(ConnectionContext context, Message message) throws java.io.IOException
MessageStore
context
- contextjava.io.IOException
public Message getMessage(MessageId identity) throws java.io.IOException
MessageStore
identity
- which contains either the messageID or the messageNumberjava.io.IOException
protected boolean recoverMessage(MessageRecoveryListener listener, Message msg) throws java.lang.Exception
java.lang.Exception
public void removeMessage(ConnectionContext context, MessageAck ack) throws java.io.IOException
MessageStore
ack
- the ack request that cause the message to be removed. It
conatins the identity which contains the messageID of the
message that needs to be removed.java.io.IOException
public void removeMessage(MessageId msgId) throws java.io.IOException
java.io.IOException
public void recover(MessageRecoveryListener listener) throws java.lang.Exception
MessageStore
java.lang.Exception
public void removeAllMessages(ConnectionContext context) throws java.io.IOException
MessageStore
java.io.IOException
public void delete()
public int getMessageCount()
MessageStore.getMessageCount()
public MessageId getPreviousMessageIdToDeliver(MessageId id) throws java.lang.Exception
id
- java.lang.Exception
org.apache.activemq.store.MessageStore#getPreviousMessageIdToDeliver(org.apache.activemq.command.MessageId)
public void recoverNextMessages(int maxReturned, MessageRecoveryListener listener) throws java.lang.Exception
lastMessageId
- maxReturned
- listener
- java.lang.Exception
org.apache.activemq.store.MessageStore#recoverNextMessages(org.apache.activemq.command.MessageId,
int, org.apache.activemq.store.MessageRecoveryListener)
public void resetBatching()
MessageStore
nextToDispatch
- org.apache.activemq.store.MessageStore#resetBatching(org.apache.activemq.command.MessageId)
public boolean isSupportForCursors()
public void setBatch(MessageId messageId)
MessageStore
setBatch
in interface MessageStore
setBatch
in class AbstractMessageStore
Copyright © 2005-2014. All Rights Reserved.