Interface TransactionImportWrapper

All Known Implementing Classes:
TransactionImportManager

public interface TransactionImportWrapper
Duplicates GF Transaction Manager extensions interface TransactionImport that support transaction inflow w/o resource adapter.
  • Method Summary

    Modifier and Type
    Method
    Description
    int
    Return duration before current transaction would timeout.
    jakarta.resource.spi.XATerminator
    Provides a handle to a XATerminator instance which is used to import an external transaction into Java EE TM.
    void
    recreate(Xid xid, long timeout)
    Recreate a transaction based on the Xid.
    void
    release(Xid xid)
    Release a transaction.
  • Method Details

    • recreate

      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.

      Parameters:
      xid - the Xid object representing a transaction.
    • release

      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.

      Parameters:
      xid - the Xid object representing a transaction.
    • getXATerminator

      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.

      Returns:
      a XATerminator instance.
    • getTransactionRemainingTimeout

      int getTransactionRemainingTimeout() throws jakarta.transaction.SystemException
      Return duration before current transaction would timeout.
      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:
      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.