org.codehaus.activemq.store.journal
Class JournalMessageStore
java.lang.Object
org.codehaus.activemq.store.journal.JournalMessageStore
- All Implemented Interfaces:
- org.codehaus.activemq.store.cache.CacheMessageStoreAware, org.codehaus.activemq.store.MessageStore, org.codehaus.activemq.service.Service
- public class JournalMessageStore
- extends Object
- implements org.codehaus.activemq.store.MessageStore, org.codehaus.activemq.store.cache.CacheMessageStoreAware
A MessageStore that uses a Journal to store it's messages.
- Version:
- $Revision: 1.2 $
Method Summary |
org.codehaus.activemq.service.MessageIdentity |
addMessage(org.codehaus.activemq.message.ActiveMQMessage message)
Not synchronized since the Journal has better throughput if you increase
the number of conncurrent writes that it is doing. |
org.codehaus.activemq.journal.RecordLocation |
checkpoint()
|
org.codehaus.activemq.store.MessageStore |
getLongTermStore()
|
org.codehaus.activemq.message.ActiveMQMessage |
getMessage(org.codehaus.activemq.service.MessageIdentity identity)
|
void |
recover(org.codehaus.activemq.service.QueueMessageContainer container)
Replays the checkpointStore first as those messages are the oldest ones,
then messages are replayed from the transaction log and then the cache is
updated. |
void |
removeAllMessages()
|
void |
removeMessage(org.codehaus.activemq.service.MessageIdentity identity,
org.codehaus.activemq.message.MessageAck ack)
|
void |
setCacheMessageStore(org.codehaus.activemq.store.cache.CacheMessageStore store)
|
void |
start()
|
void |
stop()
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
JournalMessageStore
public JournalMessageStore(JournalPersistenceAdapter adapter,
org.codehaus.activemq.store.MessageStore checkpointStore,
String destinationName,
boolean sync)
addMessage
public org.codehaus.activemq.service.MessageIdentity addMessage(org.codehaus.activemq.message.ActiveMQMessage message)
throws JMSException
- Not synchronized since the Journal has better throughput if you increase
the number of conncurrent writes that it is doing.
- Specified by:
addMessage
in interface org.codehaus.activemq.store.MessageStore
- Throws:
JMSException
removeMessage
public void removeMessage(org.codehaus.activemq.service.MessageIdentity identity,
org.codehaus.activemq.message.MessageAck ack)
throws JMSException
- Specified by:
removeMessage
in interface org.codehaus.activemq.store.MessageStore
- Throws:
JMSException
checkpoint
public org.codehaus.activemq.journal.RecordLocation checkpoint()
throws JMSException
- Returns:
-
- Throws:
JMSException
getMessage
public org.codehaus.activemq.message.ActiveMQMessage getMessage(org.codehaus.activemq.service.MessageIdentity identity)
throws JMSException
- Specified by:
getMessage
in interface org.codehaus.activemq.store.MessageStore
- Throws:
JMSException
recover
public void recover(org.codehaus.activemq.service.QueueMessageContainer container)
throws JMSException
- Replays the checkpointStore first as those messages are the oldest ones,
then messages are replayed from the transaction log and then the cache is
updated.
- Specified by:
recover
in interface org.codehaus.activemq.store.MessageStore
- Parameters:
container
-
- Throws:
JMSException
start
public void start()
throws JMSException
- Specified by:
start
in interface org.codehaus.activemq.service.Service
- Throws:
JMSException
stop
public void stop()
throws JMSException
- Specified by:
stop
in interface org.codehaus.activemq.service.Service
- Throws:
JMSException
getLongTermStore
public org.codehaus.activemq.store.MessageStore getLongTermStore()
- Returns:
- Returns the longTermStore.
setCacheMessageStore
public void setCacheMessageStore(org.codehaus.activemq.store.cache.CacheMessageStore store)
- Specified by:
setCacheMessageStore
in interface org.codehaus.activemq.store.cache.CacheMessageStoreAware
- See Also:
CacheMessageStoreAware.setCacheMessageStore(org.codehaus.activemq.store.cache.CacheMessageStore)
removeAllMessages
public void removeAllMessages()
throws JMSException
- Specified by:
removeAllMessages
in interface org.codehaus.activemq.store.MessageStore
- Throws:
JMSException
- See Also:
MessageStore.removeAllMessages()
Copyright © 2004-2005 Protique, Ltd.. All Rights Reserved.