Class DelegatingTransactionManager

java.lang.Object
io.helidon.integrations.jta.cdi.DelegatingTransactionManager
All Implemented Interfaces:
TransactionManager

@Deprecated(forRemoval=true) public abstract class DelegatingTransactionManager extends Object implements TransactionManager
Deprecated, for removal: This API element is subject to removal in a future version.
An equivalent class now exists in Narayana itself.
An abstract TransactionManager implementation that delegates all method invocations to another TransactionManager.

Design Notes

This class is public for convenience. It is extended by other non-public internal classes.

See Also:
  • Constructor Summary

    Constructors
    Modifier
    Constructor
    Description
    protected
    Deprecated, for removal: This API element is subject to removal in a future version.
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    Deprecated, for removal: This API element is subject to removal in a future version.
    Creates a new transaction and associates it with the current thread.
    void
    Deprecated, for removal: This API element is subject to removal in a future version.
    Completes the transaction associated with the current thread.
    int
    Deprecated, for removal: This API element is subject to removal in a future version.
    Returns the status of the transaction associated with the current thread.
    Deprecated, for removal: This API element is subject to removal in a future version.
    Returns the Transaction object that represents the transaction context of the calling thread.
    void
    resume(Transaction transaction)
    Deprecated, for removal: This API element is subject to removal in a future version.
    Resumes the transaction context association of the calling thread with the transaction represented by the supplied Transaction object.
    void
    Deprecated, for removal: This API element is subject to removal in a future version.
    Rolls back the transaction associated with the current thread.
    void
    Deprecated, for removal: This API element is subject to removal in a future version.
    Irrevocably modifies the transaction associated with the current thread such that the only possible outcome is for it to roll back.
    void
    setTransactionTimeout(int seconds)
    Deprecated, for removal: This API element is subject to removal in a future version.
    Sets the timeout value that is associated with transactions started by the current thread with the begin() method.
    Deprecated, for removal: This API element is subject to removal in a future version.
    Suspends the transaction currently associated with the calling thread and returns a Transaction that represents the transaction context being suspended, or null if the calling thread is not associated with a transaction.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • DelegatingTransactionManager

      protected DelegatingTransactionManager(TransactionManager delegate)
      Deprecated, for removal: This API element is subject to removal in a future version.
      Parameters:
      delegate - the TransactionManager to which all method invocations will be delegated; may be null, but then a SystemException will be thrown by every method in this class when invoked
  • Method Details

    • begin

      public void begin() throws NotSupportedException, SystemException
      Deprecated, for removal: This API element is subject to removal in a future version.
      Creates a new transaction and associates it with the current thread.
      Specified by:
      begin in interface TransactionManager
      Throws:
      NotSupportedException - if the thread is already associated with a transaction and this TransactionManager implementation does not support nested transactions
      SystemException - if this TransactionManager encounters an unexpected error condition
    • commit

      Deprecated, for removal: This API element is subject to removal in a future version.
      Completes the transaction associated with the current thread.

      When this method completes, the thread is no longer associated with a transaction.

      Specified by:
      commit in interface TransactionManager
      Throws:
      RollbackException - if the transaction has been rolled back rather than committed
      HeuristicMixedException - if a heuristic decision was made and that some relevant updates have been committed while others have been rolled back
      HeuristicRollbackException - if a heuristic decision was made and all relevant updates have been rolled back
      SecurityException - if the thread is not allowed to commit the transaction
      IllegalStateException - if the current thread is not associated with a transaction
      SystemException - if this TransactionManager encounters an unexpected error condition
    • getStatus

      public int getStatus() throws SystemException
      Deprecated, for removal: This API element is subject to removal in a future version.
      Returns the status of the transaction associated with the current thread.
      Specified by:
      getStatus in interface TransactionManager
      Returns:
      the transaction status expressed as the value of one of the int constants in the Status class; if no transaction is associated with the current thread, this method returns Status.STATUS_NO_TRANSACTION
      Throws:
      SystemException - if this TransactionManager encounters an unexpected error condition
      See Also:
    • getTransaction

      public Transaction getTransaction() throws SystemException
      Deprecated, for removal: This API element is subject to removal in a future version.
      Returns the Transaction object that represents the transaction context of the calling thread.

      This method never returns null.

      Specified by:
      getTransaction in interface TransactionManager
      Returns:
      the Transaction object representing the transaction associated with the calling thread; never null
      Throws:
      SystemException - if this TransactionManager encounters an unexpected error condition
    • resume

      public void resume(Transaction transaction) throws InvalidTransactionException, SystemException
      Deprecated, for removal: This API element is subject to removal in a future version.
      Resumes the transaction context association of the calling thread with the transaction represented by the supplied Transaction object.

      When this method returns, the calling thread is associated with the transaction context specified.

      Specified by:
      resume in interface TransactionManager
      Parameters:
      transaction - the Transaction representing the transaction to be resumed; must not be null
      Throws:
      InvalidTransactionException - if transaction is invalid
      IllegalStateException - if the thread is already associated with another transaction
      SystemException - if this TransactionManager encounters an unexpected error condition
    • rollback

      public void rollback() throws SystemException
      Deprecated, for removal: This API element is subject to removal in a future version.
      Rolls back the transaction associated with the current thread.

      When this method completes, the thread is no longer associated with a transaction.

      Specified by:
      rollback in interface TransactionManager
      Throws:
      SecurityException - if the thread is not allowed to roll back the transaction
      IllegalStateException - if the current thread is not associated with a transaction
      SystemException - if this TransactionManager encounters an unexpected error condition
    • setRollbackOnly

      public void setRollbackOnly() throws SystemException
      Deprecated, for removal: This API element is subject to removal in a future version.
      Irrevocably modifies the transaction associated with the current thread such that the only possible outcome is for it to roll back.
      Specified by:
      setRollbackOnly in interface TransactionManager
      Throws:
      IllegalStateException - if the current thread is not associated with a transaction
      SystemException - if this TransactionManager encounters an unexpected error condition
    • setTransactionTimeout

      public void setTransactionTimeout(int seconds) throws SystemException
      Deprecated, for removal: This API element is subject to removal in a future version.
      Sets the timeout value that is associated with transactions started by the current thread with the begin() method.

      If an application has not called this method, the transaction service uses some default value for the transaction timeout.

      Specified by:
      setTransactionTimeout in interface TransactionManager
      Parameters:
      seconds - the timeout in seconds; if the value is zero, the transaction service restores the default value; if the value is negative a SystemException is thrown
      Throws:
      SystemException - if this TransactionManager encounters an unexpected error condition or if seconds is less than zero
    • suspend

      public Transaction suspend() throws SystemException
      Deprecated, for removal: This API element is subject to removal in a future version.
      Suspends the transaction currently associated with the calling thread and returns a Transaction that represents the transaction context being suspended, or null if the calling thread is not associated with a transaction.

      This method may return null.

      When this method returns, the calling thread is no longer associated with a transaction.

      Specified by:
      suspend in interface TransactionManager
      Returns:
      a Transaction representing the suspended transaction, or null
      Throws:
      SystemException - if this TransactionManager encounters an unexpected error condition