|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.apache.activemq.store.AbstractMessageStore
org.apache.activemq.store.journal.JournalMessageStore
public class JournalMessageStore
A MessageStore that uses a Journal to store it's messages.
| Field Summary | |
|---|---|
protected java.util.Set<org.apache.activeio.journal.RecordLocation> |
inFlightTxLocations
|
protected org.apache.activeio.journal.RecordLocation |
lastLocation
|
protected MessageStore |
longTermStore
|
protected JournalPersistenceAdapter |
peristenceAdapter
|
protected JournalTransactionStore |
transactionStore
|
protected TransactionTemplate |
transactionTemplate
|
| Fields inherited from class org.apache.activemq.store.AbstractMessageStore |
|---|
destination, FUTURE, prioritizedMessages |
| Constructor Summary | |
|---|---|
JournalMessageStore(JournalPersistenceAdapter adapter,
MessageStore checkpointStore,
ActiveMQDestination destination)
|
|
| Method Summary | |
|---|---|
void |
addMessage(ConnectionContext context,
Message message)
Not synchronized since the Journal has better throughput if you increase the number of concurrent writes that it is doing. |
void |
addMessageReference(ConnectionContext context,
MessageId messageId,
long expirationTime,
java.lang.String messageRef)
|
org.apache.activeio.journal.RecordLocation |
checkpoint()
|
org.apache.activeio.journal.RecordLocation |
checkpoint(Callback postCheckpointTest)
|
MessageStore |
getLongTermMessageStore()
|
Message |
getMessage(MessageId identity)
Looks up a message using either the String messageID or the messageNumber. |
int |
getMessageCount()
|
java.lang.String |
getMessageReference(MessageId identity)
|
void |
recover(MessageRecoveryListener listener)
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 |
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 |
replayAddMessage(ConnectionContext context,
Message message)
|
void |
replayRemoveMessage(ConnectionContext context,
MessageAck messageAck)
|
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 |
void |
setMemoryUsage(MemoryUsage memoryUsage)
|
void |
start()
|
void |
stop()
|
| Methods inherited from class org.apache.activemq.store.AbstractMessageStore |
|---|
addMessage, asyncAddQueueMessage, asyncAddQueueMessage, asyncAddTopicMessage, asyncAddTopicMessage, dispose, getDestination, isEmpty, isPrioritizedMessages, removeAsyncMessage, setPrioritizedMessages |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
protected final JournalPersistenceAdapter peristenceAdapter
protected final JournalTransactionStore transactionStore
protected final MessageStore longTermStore
protected final TransactionTemplate transactionTemplate
protected org.apache.activeio.journal.RecordLocation lastLocation
protected java.util.Set<org.apache.activeio.journal.RecordLocation> inFlightTxLocations
| Constructor Detail |
|---|
public JournalMessageStore(JournalPersistenceAdapter adapter,
MessageStore checkpointStore,
ActiveMQDestination destination)
| Method Detail |
|---|
public void setMemoryUsage(MemoryUsage memoryUsage)
setMemoryUsage in interface MessageStoresetMemoryUsage in class AbstractMessageStorememoryUsage - The SystemUsage that is controlling the
destination's memory usage.
public void addMessage(ConnectionContext context,
Message message)
throws java.io.IOException
context - context
java.io.IOException
public void replayAddMessage(ConnectionContext context,
Message message)
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 replayRemoveMessage(ConnectionContext context,
MessageAck messageAck)
public org.apache.activeio.journal.RecordLocation checkpoint()
throws java.io.IOException
java.io.IOException
public org.apache.activeio.journal.RecordLocation checkpoint(Callback postCheckpointTest)
throws java.io.IOException
java.io.IOException
public Message getMessage(MessageId identity)
throws java.io.IOException
MessageStore
identity - which contains either the messageID or the messageNumber
java.io.IOException
public void recover(MessageRecoveryListener listener)
throws java.lang.Exception
listener -
java.lang.Exception
public void start()
throws java.lang.Exception
start in interface Servicestart in class AbstractMessageStorejava.lang.Exception
public void stop()
throws java.lang.Exception
stop in interface Servicestop in class AbstractMessageStorejava.lang.Exceptionpublic MessageStore getLongTermMessageStore()
public void removeAllMessages(ConnectionContext context)
throws java.io.IOException
MessageStore
java.io.IOExceptionMessageStore.removeAllMessages(ConnectionContext)
public void addMessageReference(ConnectionContext context,
MessageId messageId,
long expirationTime,
java.lang.String messageRef)
throws java.io.IOException
java.io.IOException
public java.lang.String getMessageReference(MessageId identity)
throws java.io.IOException
java.io.IOException
public int getMessageCount()
throws java.io.IOException
java.io.IOExceptionMessageStore.getMessageCount()
public void recoverNextMessages(int maxReturned,
MessageRecoveryListener listener)
throws java.lang.Exception
java.lang.Exceptionpublic void resetBatching()
MessageStore
public void setBatch(MessageId messageId)
throws java.lang.Exception
MessageStore
setBatch in interface MessageStoresetBatch in class AbstractMessageStorejava.lang.Exception
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||