Package com.sun.enterprise.transaction
Class TransactionManagerHelper
- java.lang.Object
-
- com.sun.enterprise.transaction.TransactionManagerHelper
-
- All Implemented Interfaces:
TransactionImport,jakarta.transaction.TransactionManager
@Service @ContractsProvided({TransactionManagerHelper.class,jakarta.transaction.TransactionManager.class}) public class TransactionManagerHelper extends Object implements jakarta.transaction.TransactionManager, TransactionImportThis class is wrapper for the actual transaction manager implementation. JNDI lookup name "java:appserver/TransactionManager" see the com/sun/enterprise/naming/java/javaURLContext.java
-
-
Constructor Summary
Constructors Constructor Description TransactionManagerHelper()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidbegin()voidcommit()intgetStatus()jakarta.transaction.TransactiongetTransaction()intgetTransactionRemainingTimeout()Return duration before current transaction would timeout.jakarta.resource.spi.XATerminatorgetXATerminator()Provides a handle to aXATerminatorinstance.voidpostInvokeTx(boolean suspend, boolean checkServletInvocation)PostInvoke Transaction configuration for Servlet Container.voidpreInvokeTx(boolean checkServletInvocation)PreInvoke Transaction configuration for Servlet Container.voidrecreate(Xid xid, long timeout)Recreate a transaction based on the Xid.voidregisterRecoveryResourceHandler(XAResource xaResource)Allows an arbitrary XAResource to register for recoveryvoidrelease(Xid xid)Release a transaction.voidresume(jakarta.transaction.Transaction tobj)voidrollback()voidsetRollbackOnly()voidsetTransactionTimeout(int seconds)jakarta.transaction.Transactionsuspend()
-
-
-
Method Detail
-
begin
public void begin() throws jakarta.transaction.NotSupportedException, jakarta.transaction.SystemException- Specified by:
beginin interfacejakarta.transaction.TransactionManager- Throws:
jakarta.transaction.NotSupportedExceptionjakarta.transaction.SystemException
-
commit
public void commit() throws jakarta.transaction.RollbackException, jakarta.transaction.HeuristicMixedException, jakarta.transaction.HeuristicRollbackException, SecurityException, IllegalStateException, jakarta.transaction.SystemException- Specified by:
commitin interfacejakarta.transaction.TransactionManager- Throws:
jakarta.transaction.RollbackExceptionjakarta.transaction.HeuristicMixedExceptionjakarta.transaction.HeuristicRollbackExceptionSecurityExceptionIllegalStateExceptionjakarta.transaction.SystemException
-
getStatus
public int getStatus() throws jakarta.transaction.SystemException- Specified by:
getStatusin interfacejakarta.transaction.TransactionManager- Throws:
jakarta.transaction.SystemException
-
getTransaction
public jakarta.transaction.Transaction getTransaction() throws jakarta.transaction.SystemException- Specified by:
getTransactionin interfacejakarta.transaction.TransactionManager- Throws:
jakarta.transaction.SystemException
-
resume
public void resume(jakarta.transaction.Transaction tobj) throws jakarta.transaction.InvalidTransactionException, IllegalStateException, jakarta.transaction.SystemException- Specified by:
resumein interfacejakarta.transaction.TransactionManager- Throws:
jakarta.transaction.InvalidTransactionExceptionIllegalStateExceptionjakarta.transaction.SystemException
-
rollback
public void rollback() throws IllegalStateException, SecurityException, jakarta.transaction.SystemException- Specified by:
rollbackin interfacejakarta.transaction.TransactionManager- Throws:
IllegalStateExceptionSecurityExceptionjakarta.transaction.SystemException
-
setRollbackOnly
public void setRollbackOnly() throws IllegalStateException, jakarta.transaction.SystemException- Specified by:
setRollbackOnlyin interfacejakarta.transaction.TransactionManager- Throws:
IllegalStateExceptionjakarta.transaction.SystemException
-
setTransactionTimeout
public void setTransactionTimeout(int seconds) throws jakarta.transaction.SystemException- Specified by:
setTransactionTimeoutin interfacejakarta.transaction.TransactionManager- Throws:
jakarta.transaction.SystemException
-
suspend
public jakarta.transaction.Transaction suspend() throws jakarta.transaction.SystemException- Specified by:
suspendin interfacejakarta.transaction.TransactionManager- Throws:
jakarta.transaction.SystemException
-
recreate
public void recreate(Xid xid, long timeout)
Description copied from interface:TransactionImportRecreate a transaction based on the Xid. This call causes the calling thread to be associated with the specified transaction.This method imports a transactional context controlled by an external transaction manager.
- Specified by:
recreatein interfaceTransactionImport- Parameters:
xid- the Xid object representing a transaction.
-
release
public void release(Xid xid)
Description copied from interface:TransactionImportRelease a transaction. This call causes the calling thread to be dissociated from the specified transaction.This call releases transactional context imported by recreate method.
- Specified by:
releasein interfaceTransactionImport- Parameters:
xid- the Xid object representing a transaction.
-
getXATerminator
public jakarta.resource.spi.XATerminator getXATerminator()
Description copied from interface:TransactionImportProvides a handle to aXATerminatorinstance.The XATerminator exports 2PC protocol control to an external root transaction coordinator.
- Specified by:
getXATerminatorin interfaceTransactionImport- Returns:
- a
XATerminatorinstance.
-
preInvokeTx
public void preInvokeTx(boolean checkServletInvocation)
PreInvoke Transaction configuration for Servlet Container. BaseContainer.preInvokeTx() handles all this for CMT EJB. Compensate that JavaEEInstanceListener.handleBeforeEvent( BEFORE_SERVICE_EVENT) gets called before WSIT WSTX Service pipe associates a JTA txn with incoming thread. Precondition: assumes JTA transaction already associated with current thread.
-
postInvokeTx
public void postInvokeTx(boolean suspend, boolean checkServletInvocation)PostInvoke Transaction configuration for Servlet Container. BaseContainer.preInvokeTx() handles all this for CMT EJB. Precondition: assumed called prior to current transcation being suspended or released.- Parameters:
suspend- indicate whether the delisting is due to suspension or transaction completion(commmit/rollback)
-
getTransactionRemainingTimeout
public int getTransactionRemainingTimeout() throws jakarta.transaction.SystemExceptionReturn duration before current transaction would timeout.- Specified by:
getTransactionRemainingTimeoutin interfaceTransactionImport- Returns:
- Returns the duration in seconds before current transaction would timeout. Returns zero if transaction has no timeout set and returns negative value if transaction already timed out.
- Throws:
IllegalStateException- Thrown if the current thread is not associated with a transaction.jakarta.transaction.SystemException- Thrown if the transaction manager encounters an unexpected error condition.
-
registerRecoveryResourceHandler
public void registerRecoveryResourceHandler(XAResource xaResource)
Allows an arbitrary XAResource to register for recovery- Specified by:
registerRecoveryResourceHandlerin interfaceTransactionImport- Parameters:
xaResource- XAResource to register for recovery
-
-