public class KahaReferenceStore extends AbstractMessageStore implements ReferenceStore
ReferenceStore.ReferenceData| Modifier and Type | Field and Description |
|---|---|
protected KahaReferenceStoreAdapter |
adapter |
protected ActiveMQMessageAudit |
dispatchAudit |
protected Lock |
lock |
protected MapContainer<MessageId,ReferenceRecord> |
messageContainer |
destination, FUTURE, prioritizedMessages| Constructor and Description |
|---|
KahaReferenceStore(KahaReferenceStoreAdapter adapter,
MapContainer<MessageId,ReferenceRecord> container,
ActiveMQDestination destination) |
| Modifier and Type | Method and Description |
|---|---|
void |
addMessage(ConnectionContext context,
Message message)
Adds a message to the message store
|
boolean |
addMessageReference(ConnectionContext context,
MessageId messageId,
ReferenceStore.ReferenceData data)
Adds a message reference to the message store
|
void |
delete() |
void |
dispose(ConnectionContext context) |
Message |
getMessage(MessageId identity)
Looks up a message using either the String messageID or the
messageNumber.
|
int |
getMessageCount() |
protected MessageId |
getMessageId(Object object) |
ReferenceStore.ReferenceData |
getMessageReference(MessageId identity)
Looks up a message using either the String messageID or the
messageNumber.
|
Lock |
getStoreLock() |
protected boolean |
isDuplicate(MessageId messageId) |
boolean |
isSupportForCursors() |
void |
recover(MessageRecoveryListener listener)
Recover any messages to be delivered.
|
void |
recoverNextMessages(int maxReturned,
MessageRecoveryListener listener) |
protected boolean |
recoverReference(MessageRecoveryListener listener,
ReferenceRecord record) |
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 |
resetBatching()
A hint to the Store to reset any batching state for the Destination
|
void |
setBatch(MessageId startAfter)
allow caching cursors to set the current batch offset when cache is exhausted
|
boolean |
supportsExternalBatchControl() |
addMessage, asyncAddQueueMessage, asyncAddQueueMessage, asyncAddTopicMessage, asyncAddTopicMessage, getDestination, isEmpty, isPrioritizedMessages, removeAsyncMessage, setMemoryUsage, setPrioritizedMessages, start, stopclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitaddMessage, asyncAddQueueMessage, asyncAddQueueMessage, asyncAddTopicMessage, asyncAddTopicMessage, getDestination, isEmpty, isPrioritizedMessages, removeAsyncMessage, setMemoryUsage, setPrioritizedMessagesprotected final MapContainer<MessageId,ReferenceRecord> messageContainer
protected KahaReferenceStoreAdapter adapter
protected ActiveMQMessageAudit dispatchAudit
public KahaReferenceStore(KahaReferenceStoreAdapter adapter, MapContainer<MessageId,ReferenceRecord> container, ActiveMQDestination destination) throws IOException
IOExceptionpublic Lock getStoreLock()
getStoreLock in interface ReferenceStorepublic void dispose(ConnectionContext context)
dispose in interface MessageStoredispose in class AbstractMessageStoreprotected MessageId getMessageId(Object object)
public void addMessage(ConnectionContext context, Message message) throws IOException
MessageStoreaddMessage in interface MessageStorecontext - contextIOExceptionpublic Message getMessage(MessageId identity) throws IOException
MessageStoregetMessage in interface MessageStoreidentity - which contains either the messageID or the messageNumberIOExceptionprotected final boolean recoverReference(MessageRecoveryListener listener, ReferenceRecord record) throws Exception
Exceptionpublic void recover(MessageRecoveryListener listener) throws Exception
MessageStorerecover in interface MessageStoreExceptionpublic void recoverNextMessages(int maxReturned, MessageRecoveryListener listener) throws Exception
recoverNextMessages in interface MessageStoreExceptionpublic boolean addMessageReference(ConnectionContext context, MessageId messageId, ReferenceStore.ReferenceData data) throws IOException
ReferenceStoreaddMessageReference in interface ReferenceStoreIOExceptionprotected boolean isDuplicate(MessageId messageId)
public ReferenceStore.ReferenceData getMessageReference(MessageId identity) throws IOException
ReferenceStoregetMessageReference in interface ReferenceStoreIOExceptionpublic void removeMessage(ConnectionContext context, MessageAck ack) throws IOException
MessageStoreremoveMessage in interface MessageStoreack - 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.IOExceptionpublic void removeAllMessages(ConnectionContext context) throws IOException
MessageStoreremoveAllMessages in interface MessageStoreIOExceptionpublic void delete()
public void resetBatching()
MessageStoreresetBatching in interface MessageStorepublic int getMessageCount()
getMessageCount in interface MessageStorepublic boolean isSupportForCursors()
public boolean supportsExternalBatchControl()
supportsExternalBatchControl in interface ReferenceStorepublic void setBatch(MessageId startAfter)
MessageStoresetBatch in interface MessageStoresetBatch in interface ReferenceStoresetBatch in class AbstractMessageStorestartAfter - ReferenceStore.setBatch(org.apache.activemq.command.MessageId)Copyright © 2005–2017. All rights reserved.