Overview The Current interface defines operations that allow a client of the transaction framework to explicitly manage the association between threads and transactions. File stem CosTransactions Local-only True Exceptions HeuristicHazard HeuristicMixed SubtransactionsUnavailable NoTransaction Supported operations Current::begin Current::commit Current::get_control Current::get_status Current::get_transaction_name Current::resume Current::rollback Current::rolback_only Current::set_timeout Current::suspend
Intended Usage
The Current interface defines methods that allow a client of the transaction service to manage the association between thread and transactions. The Current interface provides indirect control of the transaction. It also defines methods that simplify the use of the transaction service. The methods can be used to begin and end transactions, and to obtain information about the current transaction.
The Current interface is derived from a CORBA::Current and can be obtained by invoking CORBA::ORB::resolve_initial_references("TransactionCurrent") and narrowing the resulting CORBA::Object to a CosTransactions::Current.
IDL syntax
interface Current : CORBA::Current { void begin() raises(SubtransactionsUnavailable); void commit(in boolean report_heuristics) raises(NoTransaction, HeuristicMixed, HeuristicHazard); void rollback() raises(NoTransaction); void rollback_only() raises(NoTransaction); Status get_status(); string get_transaction_name(); void set_timeout(in unsigned long seconds); Control get_control(); Control suspend(); void resume(in Control which) raises(InvalidControl); };