org.mule.transaction
Class XaTransaction

java.lang.Object
  extended by org.mule.transaction.AbstractTransaction
      extended by org.mule.transaction.XaTransaction
All Implemented Interfaces:
Transaction
Direct Known Subclasses:
ExternalXaTransaction

public class XaTransaction
extends AbstractTransaction

XaTransaction represents an XA transaction in Mule.


Nested Class Summary
static interface XaTransaction.MuleXaObject
           
 
Field Summary
protected  Transaction transaction
          The inner JTA transaction
protected  TransactionManager txManager
           
 
Fields inherited from class org.mule.transaction.AbstractTransaction
id, logger, muleContext
 
Fields inherited from interface org.mule.api.transaction.Transaction
STATUS_ACTIVE, STATUS_COMMITTED, STATUS_COMMITTING, STATUS_MARKED_ROLLBACK, STATUS_NO_TRANSACTION, STATUS_PREPARED, STATUS_PREPARING, STATUS_ROLLEDBACK, STATUS_ROLLING_BACK, STATUS_UNKNOWN
 
Constructor Summary
XaTransaction(MuleContext context)
           
 
Method Summary
 void bindResource(Object key, Object resource)
           
protected  void closeResources()
           
 boolean delistResource(XAResource resource, int tmflag)
           
protected  void delistResources()
           
protected  void doBegin()
          Really begin the transaction.
protected  void doCommit()
          Commit the transaction on the underlying resource
protected  void doRollback()
          Rollback the transaction on the underlying resource
 boolean enlistResource(XAResource resource)
           
 Object getResource(Object key)
           
 int getStatus()
           
 Transaction getTransaction()
           
 boolean hasResource(Object key)
           
 boolean isXA()
           
 void resume()
          Resume the XA transaction
 void setRollbackOnly()
           
 boolean supports(Object key, Object resource)
           
 Transaction suspend()
          Suspend the XA transaction
 String toString()
           
 
Methods inherited from class org.mule.transaction.AbstractTransaction
begin, commit, fireNotification, getId, isBegun, isCommitted, isRollbackOnly, isRolledBack, rollback, unbindTransaction
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

transaction

protected Transaction transaction
The inner JTA transaction


txManager

protected TransactionManager txManager
Constructor Detail

XaTransaction

public XaTransaction(MuleContext context)
Method Detail

doBegin

protected void doBegin()
                throws TransactionException
Description copied from class: AbstractTransaction
Really begin the transaction. Note that resources are enlisted yet.

Specified by:
doBegin in class AbstractTransaction
Throws:
TransactionException

doCommit

protected void doCommit()
                 throws TransactionException
Description copied from class: AbstractTransaction
Commit the transaction on the underlying resource

Specified by:
doCommit in class AbstractTransaction
Throws:
TransactionException

doRollback

protected void doRollback()
                   throws TransactionRollbackException
Description copied from class: AbstractTransaction
Rollback the transaction on the underlying resource

Specified by:
doRollback in class AbstractTransaction
Throws:
TransactionRollbackException

getStatus

public int getStatus()
              throws TransactionStatusException
Throws:
TransactionStatusException

setRollbackOnly

public void setRollbackOnly()

getResource

public Object getResource(Object key)

hasResource

public boolean hasResource(Object key)

bindResource

public void bindResource(Object key,
                         Object resource)
                  throws TransactionException
Throws:
TransactionException

enlistResource

public boolean enlistResource(XAResource resource)
                       throws TransactionException
Throws:
TransactionException

delistResource

public boolean delistResource(XAResource resource,
                              int tmflag)
                       throws TransactionException
Throws:
TransactionException

toString

public String toString()
Overrides:
toString in class AbstractTransaction

getTransaction

public Transaction getTransaction()

isXA

public boolean isXA()
Specified by:
isXA in interface Transaction
Overrides:
isXA in class AbstractTransaction

resume

public void resume()
            throws TransactionException
Description copied from interface: Transaction
Resume the XA transaction

Specified by:
resume in interface Transaction
Overrides:
resume in class AbstractTransaction
Throws:
TransactionException - if any error

suspend

public Transaction suspend()
                    throws TransactionException
Description copied from interface: Transaction
Suspend the XA transaction

Specified by:
suspend in interface Transaction
Overrides:
suspend in class AbstractTransaction
Throws:
TransactionException - if any error

delistResources

protected void delistResources()

closeResources

protected void closeResources()

supports

public boolean supports(Object key,
                        Object resource)
Parameters:
key - transactional resource key (i.e jdbc DataSource or jms Connection)
resource - transactional resource (i.e. jdbc Connection or jms Session)
Returns:
true if the current transaction supports to bind transactional resources key and resource


Copyright © 2003-2012 MuleSoft, Inc.. All Rights Reserved.