Class TransactionImportManager

  • All Implemented Interfaces:
    TransactionImportWrapper

    public class TransactionImportManager
    extends Object
    implements TransactionImportWrapper
    Access Transaction Inflow Contract from Java Connector 1.5 API. Assumption is the underlying TransactionManager is implementing this interface. Separate this from TransactionManagerImpl since this provides mostly service side assistance. Assists in supporting application client and standalone client to separate from more commonly used methods in TransactionManagerImpl.
    • Method Detail

      • recreate

        public void recreate​(Xid xid,
                             long timeout)
        $Recreate 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:
        recreate in interface TransactionImportWrapper
        Parameters:
        xid - the Xid object representing a transaction.
      • release

        public void release​(Xid xid)
        $Release 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:
        release in interface TransactionImportWrapper
        Parameters:
        xid - the Xid object representing a transaction.
      • getXATerminator

        public jakarta.resource.spi.XATerminator getXATerminator()
        $Provides a handle to a XATerminator instance which is used to import an external transaction into Java EE TM.

        The XATerminator exports 2PC protocol control to an external root transaction coordinator.

        Specified by:
        getXATerminator in interface TransactionImportWrapper
        Returns:
        a XATerminator instance.
      • getTransactionRemainingTimeout

        public int getTransactionRemainingTimeout()
                                           throws jakarta.transaction.SystemException
        $Return duration before current transaction would timeout.
        Specified by:
        getTransactionRemainingTimeout in interface TransactionImportWrapper
        Returns:
        Returns the duration in seconds before current transaction would timeout. Returns zero if transaction has no timeout set or if any exceptions occured while looking up remaining transaction timeout. Returns negative value if transaction already timed out.
        Throws:
        jakarta.transaction.SystemException - Thrown if the transaction manager encounters an unexpected error condition.
      • getTxLogLocation

        public String getTxLogLocation()
      • registerRecoveryResourceHandler

        public static void registerRecoveryResourceHandler​(XAResource xaResource)