Overview | Provides common operations for top-level transactions. |
File stem | CosTransactions |
Exceptions | Inactive |
SubtransactionsUnavailable | |
Unavailable | |
Supported operations | Coordinator::get_parent_status |
Coordinator::get_status | |
Coordinator::get_top_level_status | |
Coordinator::get_transaction_name | |
Coordinator::hash_top_level_transaction | |
Coordinator::hash_transaction | |
Coordinator::is_ancestor_transaction | |
Coordinator::is_descendant_transaction | |
Coordinator::is_related_transaction | |
Coordinator::is_same_transaction | |
Coordinator::is_top_level_transaction | |
Coordinator::rollback_only |
Intended Usage
The Coordinator interface provides common operations for top-level transactions. Participants in a transaction are typically either recoverable objects, or agents of recoverable objects, such as subordinate coordinators. An object supporting the Coordinator interface is implicitly associated with one transaction only.
Syntax
interface Coordinator { Status get_status(); Status get_parent_status(); Status get_top_level_status(); boolean is_same_transaction(in Coordinator coord); boolean is_related_transaction(in Coordinator coord); boolean is_anscestor_transaction(in Coordinator coord); boolean is_descendant_transaction(in Coordinator coord); boolean is_top_level_transaction(); unsigned long hash_transaction(in unsigned long maximum); unsigned long hash_top_level_tran(in unsigned long maximum); RecoveryCoordinator register_resource(in Resource res) raises(Inactive); void register_synchronization (in Synchronization sync) raises(Inactive); void register_subtran_aware(in SubtransactionalAwareResource res) raises(Inactive, SubtransactionsUnavailable); void rollback_only() raises(Inactive); string get_transaction_name(); Control create_subtransaction() raises(SubtransactionsUnavailable Inactive); CosTSInteroperation::PropagationContext get_txcontext () raises(Unavailable); };