Package org.apache.activemq.store
Class AbstractMessageStore
java.lang.Object
org.apache.activemq.store.AbstractMessageStore
- All Implemented Interfaces:
org.apache.activemq.Service,MessageStore
- Direct Known Subclasses:
MemoryMessageStore
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.apache.activemq.store.MessageStore
MessageStore.StoreType -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final org.apache.activemq.command.ActiveMQDestinationstatic final ListenableFuture<Object>protected IndexListenerprotected final MessageStoreStatisticsprotected boolean -
Constructor Summary
ConstructorsConstructorDescriptionAbstractMessageStore(org.apache.activemq.command.ActiveMQDestination destination) -
Method Summary
Modifier and TypeMethodDescriptionvoidaddMessage(ConnectionContext context, org.apache.activemq.command.Message message, boolean canOptimizeHint) Adds a message to the message storeasyncAddQueueMessage(ConnectionContext context, org.apache.activemq.command.Message message) Adds a message to the message storeasyncAddQueueMessage(ConnectionContext context, org.apache.activemq.command.Message message, boolean canOptimizeHint) Adds a message to the message storeasyncAddTopicMessage(ConnectionContext context, org.apache.activemq.command.Message message) Adds a message to the message storeasyncAddTopicMessage(ConnectionContext context, org.apache.activemq.command.Message message, boolean canOptimizeHint) Adds a message to the message storevoiddispose(ConnectionContext context) org.apache.activemq.command.ActiveMQDestinationThe destination that the message store is holding messages for.intlongbooleanisEmpty()flag to indicate if the store is emptybooleanprotected voidvoidregisterIndexListener(IndexListener indexListener) voidremoveAsyncMessage(ConnectionContext context, org.apache.activemq.command.MessageAck ack) voidsetBatch(org.apache.activemq.command.MessageId messageId) allow caching cursors to set the current batch offset when cache is exhaustedvoidsetMemoryUsage(org.apache.activemq.usage.MemoryUsage memoryUsage) voidsetPrioritizedMessages(boolean prioritizedMessages) A hint to the store to try recover messages according to priorityvoidstart()voidstop()voidupdateMessage(org.apache.activemq.command.Message message) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.apache.activemq.store.MessageStore
addMessage, getMessage, getType, recover, recoverNextMessages, removeAllMessages, removeMessage, resetBatching
-
Field Details
-
FUTURE
-
destination
protected final org.apache.activemq.command.ActiveMQDestination destination -
prioritizedMessages
protected boolean prioritizedMessages -
indexListener
-
messageStoreStatistics
-
-
Constructor Details
-
AbstractMessageStore
public AbstractMessageStore(org.apache.activemq.command.ActiveMQDestination destination)
-
-
Method Details
-
dispose
- Specified by:
disposein interfaceMessageStore
-
start
- Specified by:
startin interfaceorg.apache.activemq.Service- Throws:
Exception
-
stop
- Specified by:
stopin interfaceorg.apache.activemq.Service- Throws:
Exception
-
getDestination
public org.apache.activemq.command.ActiveMQDestination getDestination()Description copied from interface:MessageStoreThe destination that the message store is holding messages for.- Specified by:
getDestinationin interfaceMessageStore- Returns:
- the destination
-
setMemoryUsage
public void setMemoryUsage(org.apache.activemq.usage.MemoryUsage memoryUsage) - Specified by:
setMemoryUsagein interfaceMessageStore- Parameters:
memoryUsage- The SystemUsage that is controlling the destination's memory usage.
-
setBatch
Description copied from interface:MessageStoreallow caching cursors to set the current batch offset when cache is exhausted- Specified by:
setBatchin interfaceMessageStore- Throws:
ExceptionIOException
-
isEmpty
flag to indicate if the store is empty- Specified by:
isEmptyin interfaceMessageStore- Returns:
- true if the message count is 0
- Throws:
Exception
-
setPrioritizedMessages
public void setPrioritizedMessages(boolean prioritizedMessages) Description copied from interface:MessageStoreA hint to the store to try recover messages according to priority- Specified by:
setPrioritizedMessagesin interfaceMessageStore
-
isPrioritizedMessages
public boolean isPrioritizedMessages()- Specified by:
isPrioritizedMessagesin interfaceMessageStore- Returns:
- true if store is trying to recover messages according to priority
-
addMessage
public void addMessage(ConnectionContext context, org.apache.activemq.command.Message message, boolean canOptimizeHint) throws IOException Description copied from interface:MessageStoreAdds a message to the message store- Specified by:
addMessagein interfaceMessageStore- Parameters:
context- contextcanOptimizeHint- - give a hint to the store that the message may be consumed before it hits the disk- Throws:
IOException
-
asyncAddQueueMessage
public ListenableFuture<Object> asyncAddQueueMessage(ConnectionContext context, org.apache.activemq.command.Message message) throws IOException Description copied from interface:MessageStoreAdds a message to the message store- Specified by:
asyncAddQueueMessagein interfaceMessageStore- Parameters:
context- context- Returns:
- a Future to track when this is complete
- Throws:
IOException
-
asyncAddQueueMessage
public ListenableFuture<Object> asyncAddQueueMessage(ConnectionContext context, org.apache.activemq.command.Message message, boolean canOptimizeHint) throws IOException Description copied from interface:MessageStoreAdds a message to the message store- Specified by:
asyncAddQueueMessagein interfaceMessageStore- Parameters:
context- contextcanOptimizeHint- - give a hint to the store that the message may be consumed before it hits the disk- Returns:
- a Future to track when this is complete
- Throws:
IOException
-
asyncAddTopicMessage
public ListenableFuture<Object> asyncAddTopicMessage(ConnectionContext context, org.apache.activemq.command.Message message, boolean canOptimizeHint) throws IOException Description copied from interface:MessageStoreAdds a message to the message store- Specified by:
asyncAddTopicMessagein interfaceMessageStore- Parameters:
context- contextcanOptimizeHint- - give a hint to the store that the message may be consumed before it hits the disk- Returns:
- a ListenableFuture to track when this is complete
- Throws:
IOException
-
asyncAddTopicMessage
public ListenableFuture<Object> asyncAddTopicMessage(ConnectionContext context, org.apache.activemq.command.Message message) throws IOException Description copied from interface:MessageStoreAdds a message to the message store- Specified by:
asyncAddTopicMessagein interfaceMessageStore- Parameters:
context- context- Returns:
- a ListenableFuture to track when this is complete
- Throws:
IOException
-
removeAsyncMessage
public void removeAsyncMessage(ConnectionContext context, org.apache.activemq.command.MessageAck ack) throws IOException - Specified by:
removeAsyncMessagein interfaceMessageStore- Throws:
IOException
-
updateMessage
- Specified by:
updateMessagein interfaceMessageStore- Throws:
IOException
-
registerIndexListener
- Specified by:
registerIndexListenerin interfaceMessageStore
-
getIndexListener
-
getMessageCount
- Specified by:
getMessageCountin interfaceMessageStore- Returns:
- the number of messages ready to deliver
- Throws:
IOException
-
getMessageSize
- Specified by:
getMessageSizein interfaceMessageStore- Returns:
- the size of the messages ready to deliver
- Throws:
IOException
-
getMessageStoreStatistics
- Specified by:
getMessageStoreStatisticsin interfaceMessageStore- Returns:
- The statistics bean for this message store
-
recoverMessageStoreStatistics
- Throws:
IOException
-