org.openorb.ots.Impl

Class SubTransTerminator

public class SubTransTerminator extends TerminatorPOA

This class is a terminator implementation for a sub transaction

Author: Jerome Daniel

Constructor Summary
SubTransTerminator(POA poa, Coordinator coordinator)
Constructor
Method Summary
voidcommit(boolean report_heuristics)
If the transaction has not been marked rollback only, and all of the participants in the transaction agree to commit, the transaction is committed and the operation terminates normally.
voidproceed_commit()
This operation is used to apply the commit for sub transactions
voidproceed_rollback()
This operation is used to rollback a transaction.
voidremoveItself()
This operation is used to remove this object from POA
voidrollback()
The transaction is rolled back.

Constructor Detail

SubTransTerminator

public SubTransTerminator(POA poa, Coordinator coordinator)
Constructor

Method Detail

commit

public void commit(boolean report_heuristics)
If the transaction has not been marked rollback only, and all of the participants in the transaction agree to commit, the transaction is committed and the operation terminates normally. Otherwise, the transaction is rolled back (as described below) and the TRANSACTION_ROLLEDBACK standard exception is raised. If the report_heuristics parameter is true, the Transaction Service will report inconsistent or possibly inconsistent outcomes using the HeuristicMixed and HeuristicHazard exceptions. A Transaction Service implementation may optionally use the Event Service to report heuristic decisions. The commit operation may rollback the transaction if there are subtransactions of the transaction that have not themselves been committed or rolled back or if there are existing or potential activities associated with the transaction that have not completed. The nature and extent of such error checking is implementation-dependent. When a top-level transaction is committed, all changes to recoverable objects made in the scope of this transaction are made permanent and visible to other transactions or clients. When a subtransaction is committed, the changes are made visible to other related transactions as appropriate to the degree of isolation enforced by the resources.

proceed_commit

public void proceed_commit()
This operation is used to apply the commit for sub transactions

proceed_rollback

public void proceed_rollback()
This operation is used to rollback a transaction.

removeItself

public void removeItself()
This operation is used to remove this object from POA

rollback

public void rollback()
The transaction is rolled back. When a transaction is rolled back, all changes to recoverable objects made in the scope of this transaction (including changes made by descendant transactions) are rolled back. All resources locked by the transaction are made available to other transactions as appropriate to the degree of isolation enforced by the resources.