Class SubordinateAtomicTransaction

java.lang.Object
com.arjuna.ats.jts.extensions.AtomicTransaction
com.arjuna.ats.internal.jta.transaction.jts.AtomicTransaction
com.arjuna.ats.internal.jta.transaction.jts.subordinate.SubordinateAtomicTransaction
Direct Known Subclasses:
SubordinateAtomicTransaction

public class SubordinateAtomicTransaction extends AtomicTransaction
A subordinate JTA transaction; used when importing another transaction context.
Author:
mcl
  • Constructor Details

    • SubordinateAtomicTransaction

      public SubordinateAtomicTransaction(com.arjuna.ats.internal.jts.ControlWrapper tx)
  • Method Details

    • end

      public void end(boolean report_heuristics) throws NoTransaction, HeuristicMixed, HeuristicHazard, org.omg.CORBA.WrongTransaction, org.omg.CORBA.SystemException
      Does not change thread-to-tx association as base class commit does.
      Overrides:
      end in class AtomicTransaction
      Throws:
      NoTransaction
      HeuristicMixed
      HeuristicHazard
      org.omg.CORBA.WrongTransaction
      org.omg.CORBA.SystemException
    • abort

      public void abort() throws NoTransaction, org.omg.CORBA.WrongTransaction, org.omg.CORBA.SystemException
      Does not change thread-to-tx association as base class rollback does.
      Overrides:
      abort in class AtomicTransaction
      Throws:
      NoTransaction
      org.omg.CORBA.WrongTransaction
      org.omg.CORBA.SystemException
    • doPrepare

      public int doPrepare() throws org.omg.CORBA.SystemException
      Returns:
      TwoPhaseOutcome
      Throws:
      org.omg.CORBA.SystemException
    • doCommit

      public int doCommit() throws org.omg.CORBA.SystemException
      Returns:
      ActionStatus
      Throws:
      org.omg.CORBA.SystemException
    • doRollback

      public int doRollback() throws org.omg.CORBA.SystemException
      Returns:
      ActionStatus
      Throws:
      org.omg.CORBA.SystemException
    • doOnePhaseCommit

      public int doOnePhaseCommit() throws org.omg.CORBA.SystemException
      Throws:
      org.omg.CORBA.SystemException
    • doForget

      public void doForget() throws org.omg.CORBA.SystemException
      Throws:
      org.omg.CORBA.SystemException
    • doBeforeCompletion

      public boolean doBeforeCompletion() throws org.omg.CORBA.SystemException
      Throws:
      org.omg.CORBA.SystemException
    • checkForCurrent

      protected boolean checkForCurrent()
      By default the BasicAction class only allows the termination of a transaction if it's the one currently associated with the thread. We override this here.
      Returns:
      false to indicate that this transaction can only be terminated by the right thread.