org.apache.activemq.transaction
Class Transaction

java.lang.Object
  extended by org.apache.activemq.transaction.Transaction
Direct Known Subclasses:
LocalTransaction, XATransaction

public abstract class Transaction
extends Object

Keeps track of all the actions the need to be done when a transaction does a commit or rollback.


Field Summary
static byte FINISHED_STATE
           
static byte IN_USE_STATE
           
protected  FutureTask<?> postCommitTask
           
protected  FutureTask<?> preCommitTask
           
static byte PREPARED_STATE
           
static byte START_STATE
           
 
Constructor Summary
Transaction()
           
 
Method Summary
 void addSynchronization(Synchronization r)
           
abstract  void commit(boolean onePhase)
           
protected  void doPostCommit()
           
protected  void doPreCommit()
           
 Synchronization findMatching(Synchronization r)
           
protected  void fireAfterCommit()
           
 void fireAfterRollback()
           
protected  void fireBeforeCommit()
           
abstract  Logger getLog()
           
 byte getState()
           
abstract  TransactionId getTransactionId()
           
 boolean isPrepared()
           
abstract  int prepare()
           
 void prePrepare()
           
 void removeSynchronization(Synchronization r)
           
abstract  void rollback()
           
 void setState(byte state)
           
 int size()
           
 String toString()
           
protected  void waitPostCommitDone(FutureTask<?> postCommitTask)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

START_STATE

public static final byte START_STATE
See Also:
Constant Field Values

IN_USE_STATE

public static final byte IN_USE_STATE
See Also:
Constant Field Values

PREPARED_STATE

public static final byte PREPARED_STATE
See Also:
Constant Field Values

FINISHED_STATE

public static final byte FINISHED_STATE
See Also:
Constant Field Values

preCommitTask

protected FutureTask<?> preCommitTask

postCommitTask

protected FutureTask<?> postCommitTask
Constructor Detail

Transaction

public Transaction()
Method Detail

getState

public byte getState()

setState

public void setState(byte state)

addSynchronization

public void addSynchronization(Synchronization r)

findMatching

public Synchronization findMatching(Synchronization r)

removeSynchronization

public void removeSynchronization(Synchronization r)

prePrepare

public void prePrepare()
                throws Exception
Throws:
Exception

fireBeforeCommit

protected void fireBeforeCommit()
                         throws Exception
Throws:
Exception

fireAfterCommit

protected void fireAfterCommit()
                        throws Exception
Throws:
Exception

fireAfterRollback

public void fireAfterRollback()
                       throws Exception
Throws:
Exception

toString

public String toString()
Overrides:
toString in class Object

commit

public abstract void commit(boolean onePhase)
                     throws XAException,
                            IOException
Throws:
XAException
IOException

rollback

public abstract void rollback()
                       throws XAException,
                              IOException
Throws:
XAException
IOException

prepare

public abstract int prepare()
                     throws XAException,
                            IOException
Throws:
XAException
IOException

getTransactionId

public abstract TransactionId getTransactionId()

getLog

public abstract Logger getLog()

isPrepared

public boolean isPrepared()

size

public int size()

waitPostCommitDone

protected void waitPostCommitDone(FutureTask<?> postCommitTask)
                           throws XAException,
                                  IOException
Throws:
XAException
IOException

doPreCommit

protected void doPreCommit()
                    throws XAException
Throws:
XAException

doPostCommit

protected void doPostCommit()
                     throws XAException
Throws:
XAException


Copyright © 2005-2013 The Apache Software Foundation. All Rights Reserved.