Docjar: A Java Source and Docuemnt Enginecom.*    java.*    javax.*    org.*    all    new    plug-in

Quick Search    Search Deep

org.activemq.store
Interface PersistenceAdapter  view PersistenceAdapter download PersistenceAdapter.java

All Superinterfaces:
org.activemq.service.Service

public interface PersistenceAdapter
extends org.activemq.service.Service

Adapter to the actual persistence mechanism used with ActiveMQ

Version:
$Revision: 1.1.1.1 $

Method Summary
 void beginTransaction()
          This method starts a transaction on the persistent storage - which is nothing to do with JMS or XA transactions - its purely a mechanism to perform multiple writes to a persistent store in 1 transaction as a performance optimisation.
 void commitTransaction()
          Commit a persistence transaction
 MessageStore createQueueMessageStore(java.lang.String destinationName)
          Factory method to create a new queue message store with the given destination name
 TopicMessageStore createTopicMessageStore(java.lang.String destinationName)
          Factory method to create a new topic message store with the given destination name
 TransactionStore createTransactionStore()
          Factory method to create a new persistent prepared transaction store for XA recovery
 boolean deadLetterAlreadySent(long seq, boolean useDatabaseLocking)
          Verifies if a dead letter has already been sent for a message
 java.util.Map getInitialDestinations()
          Returns a map, indexed by String name, of all the javax.jms.Destination objects active on startup.
 void rollbackTransaction()
          Rollback a persistence transaction
 
Methods inherited from interface org.activemq.service.Service
start, stop
 

Method Detail

getInitialDestinations

public java.util.Map getInitialDestinations()
Returns a map, indexed by String name, of all the javax.jms.Destination objects active on startup.


createQueueMessageStore

public MessageStore createQueueMessageStore(java.lang.String destinationName)
                                     throws javax.jms.JMSException
Factory method to create a new queue message store with the given destination name


createTopicMessageStore

public TopicMessageStore createTopicMessageStore(java.lang.String destinationName)
                                          throws javax.jms.JMSException
Factory method to create a new topic message store with the given destination name


createTransactionStore

public TransactionStore createTransactionStore()
                                        throws javax.jms.JMSException
Factory method to create a new persistent prepared transaction store for XA recovery


beginTransaction

public void beginTransaction()
                      throws javax.jms.JMSException
This method starts a transaction on the persistent storage - which is nothing to do with JMS or XA transactions - its purely a mechanism to perform multiple writes to a persistent store in 1 transaction as a performance optimisation.

Typically one transaction will require one disk synchronization point and so for real high performance its usually faster to perform many writes within the same transaction to minimise latency caused by disk synchronization. This is especially true when using tools like Berkeley Db or embedded JDBC servers.


commitTransaction

public void commitTransaction()
                       throws javax.jms.JMSException
Commit a persistence transaction


rollbackTransaction

public void rollbackTransaction()
Rollback a persistence transaction


deadLetterAlreadySent

public boolean deadLetterAlreadySent(long seq,
                                     boolean useDatabaseLocking)
Verifies if a dead letter has already been sent for a message