org.apache.activemq.store
Class AbstractMessageStore

java.lang.Object
  extended by org.apache.activemq.store.AbstractMessageStore
All Implemented Interfaces:
Service, MessageStore
Direct Known Subclasses:
AMQMessageStore, JDBCMessageStore, JournalMessageStore, KahaDBStore.KahaDBMessageStore, KahaMessageStore, KahaReferenceStore, MemoryMessageStore, TempKahaDBStore.KahaDBMessageStore

public abstract class AbstractMessageStore
extends java.lang.Object
implements MessageStore


Field Summary
protected  ActiveMQDestination destination
           
static java.util.concurrent.FutureTask<java.lang.Object> FUTURE
           
protected  boolean prioritizedMessages
           
 
Constructor Summary
AbstractMessageStore(ActiveMQDestination destination)
           
 
Method Summary
 java.util.concurrent.Future<java.lang.Object> asyncAddQueueMessage(ConnectionContext context, Message message)
          Adds a message to the message store
 java.util.concurrent.Future<java.lang.Object> asyncAddTopicMessage(ConnectionContext context, Message message)
          Adds a message to the message store
 void dispose(ConnectionContext context)
           
 ActiveMQDestination getDestination()
          The destination that the message store is holding messages for.
 boolean isEmpty()
          flag to indicate if the store is empty
 boolean isPrioritizedMessages()
           
 void removeAsyncMessage(ConnectionContext context, MessageAck ack)
           
 void setBatch(MessageId messageId)
          allow caching cursors to set the current batch offset when cache is exhausted
 void setMemoryUsage(MemoryUsage memoryUsage)
           
 void setPrioritizedMessages(boolean prioritizedMessages)
          A hint to the store to try recover messages according to priority
 void start()
           
 void stop()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.apache.activemq.store.MessageStore
addMessage, getMessage, getMessageCount, recover, recoverNextMessages, removeAllMessages, removeMessage, resetBatching
 

Field Detail

FUTURE

public static final java.util.concurrent.FutureTask<java.lang.Object> FUTURE

destination

protected final ActiveMQDestination destination

prioritizedMessages

protected boolean prioritizedMessages
Constructor Detail

AbstractMessageStore

public AbstractMessageStore(ActiveMQDestination destination)
Method Detail

dispose

public void dispose(ConnectionContext context)
Specified by:
dispose in interface MessageStore

start

public void start()
           throws java.lang.Exception
Specified by:
start in interface Service
Throws:
java.lang.Exception

stop

public void stop()
          throws java.lang.Exception
Specified by:
stop in interface Service
Throws:
java.lang.Exception

getDestination

public ActiveMQDestination getDestination()
Description copied from interface: MessageStore
The destination that the message store is holding messages for.

Specified by:
getDestination in interface MessageStore
Returns:
the destination

setMemoryUsage

public void setMemoryUsage(MemoryUsage memoryUsage)
Specified by:
setMemoryUsage in interface MessageStore
Parameters:
memoryUsage - The SystemUsage that is controlling the destination's memory usage.

setBatch

public void setBatch(MessageId messageId)
              throws java.io.IOException,
                     java.lang.Exception
Description copied from interface: MessageStore
allow caching cursors to set the current batch offset when cache is exhausted

Specified by:
setBatch in interface MessageStore
Throws:
java.lang.Exception
java.io.IOException

isEmpty

public boolean isEmpty()
                throws java.lang.Exception
flag to indicate if the store is empty

Specified by:
isEmpty in interface MessageStore
Returns:
true if the message count is 0
Throws:
java.lang.Exception

setPrioritizedMessages

public void setPrioritizedMessages(boolean prioritizedMessages)
Description copied from interface: MessageStore
A hint to the store to try recover messages according to priority

Specified by:
setPrioritizedMessages in interface MessageStore

isPrioritizedMessages

public boolean isPrioritizedMessages()
Specified by:
isPrioritizedMessages in interface MessageStore
Returns:
true if store is trying to recover messages according to priority

asyncAddQueueMessage

public java.util.concurrent.Future<java.lang.Object> asyncAddQueueMessage(ConnectionContext context,
                                                                          Message message)
                                                                   throws java.io.IOException
Description copied from interface: MessageStore
Adds a message to the message store

Specified by:
asyncAddQueueMessage in interface MessageStore
Parameters:
context - context
Returns:
a Future to track when this is complete
Throws:
java.io.IOException

asyncAddTopicMessage

public java.util.concurrent.Future<java.lang.Object> asyncAddTopicMessage(ConnectionContext context,
                                                                          Message message)
                                                                   throws java.io.IOException
Description copied from interface: MessageStore
Adds a message to the message store

Specified by:
asyncAddTopicMessage in interface MessageStore
Parameters:
context - context
Returns:
a Future to track when this is complete
Throws:
java.io.IOException

removeAsyncMessage

public void removeAsyncMessage(ConnectionContext context,
                               MessageAck ack)
                        throws java.io.IOException
Specified by:
removeAsyncMessage in interface MessageStore
Throws:
java.io.IOException


Copyright © 2005-2011 FuseSource, Corp.. All Rights Reserved.