public class XaTransaction extends AbstractTransaction
XaTransaction
represents an XA transaction in Mule.Modifier and Type | Class and Description |
---|---|
static interface |
XaTransaction.MuleXaObject |
Modifier and Type | Field and Description |
---|---|
protected Transaction |
transaction
The inner JTA transaction
|
protected TransactionManager |
txManager |
id, logger, muleContext, timeout
STATUS_ACTIVE, STATUS_COMMITTED, STATUS_COMMITTING, STATUS_MARKED_ROLLBACK, STATUS_NO_TRANSACTION, STATUS_PREPARED, STATUS_PREPARING, STATUS_ROLLEDBACK, STATUS_ROLLING_BACK, STATUS_UNKNOWN
Constructor and Description |
---|
XaTransaction(MuleContext context) |
Modifier and Type | Method and Description |
---|---|
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() |
begin, commit, fireNotification, getId, getTimeout, isBegun, isCommitted, isRollbackOnly, isRolledBack, rollback, setTimeout, unbindTransaction
protected Transaction transaction
protected TransactionManager txManager
public XaTransaction(MuleContext context)
protected void doBegin() throws TransactionException
AbstractTransaction
doBegin
in class AbstractTransaction
TransactionException
protected void doCommit() throws TransactionException
AbstractTransaction
doCommit
in class AbstractTransaction
TransactionException
protected void doRollback() throws TransactionRollbackException
AbstractTransaction
doRollback
in class AbstractTransaction
TransactionRollbackException
public int getStatus() throws TransactionStatusException
TransactionStatusException
public void setRollbackOnly()
public boolean hasResource(Object key)
public void bindResource(Object key, Object resource) throws TransactionException
key
- Must be the provider of the resource object. i.e. for JDBC it's the XADataSource, for JMS is the XAConnectionFactory.
It can be a wrapper in which case should be a XaResourceFactoryHolder
to be able to determine
correctly if there's already a resource for that XAResource
provider.resource
- the resource object. It must be an XAResource
or a XaTransaction.MuleXaObject
TransactionException
public boolean enlistResource(XAResource resource) throws TransactionException
TransactionException
public boolean delistResource(XAResource resource, int tmflag) throws TransactionException
TransactionException
public String toString()
toString
in class AbstractTransaction
public Transaction getTransaction()
public boolean isXA()
isXA
in interface Transaction
isXA
in class AbstractTransaction
public void resume() throws TransactionException
Transaction
resume
in interface Transaction
resume
in class AbstractTransaction
TransactionException
- if any errorpublic Transaction suspend() throws TransactionException
Transaction
suspend
in interface Transaction
suspend
in class AbstractTransaction
TransactionException
- if any errorprotected void delistResources()
protected void closeResources()
public boolean supports(Object key, Object resource)
key
- transactional resource key (i.e jdbc DataSource or jms Connection)resource
- transactional resource (i.e. jdbc Connection or jms Session)Copyright © 2003–2016 MuleSoft, Inc.. All rights reserved.