To get access to the record definitions for the structures use:
-include_lib("cosTransactions/include/CosTransactions.hrl").
Resource = #objref
Return = ok | {'EXCEPTION', E}
E = #'CosTransactions_NotPrepared'{} | #'CosTransactions_HeuristicRollback'{} | #'CosTransactions_HeuristicMixed'{} | #'CosTransactions_HeuristicHazard'{}
This operation instructs the Resource to commit all changes made as a part of the transaction.
The Resource can raise:
forget
operation is performed.commit_one_phase(Resource) -> Return
Resource = #objref
Return = ok | {'EXCEPTION', E}
E = #'CosTransactions_HeuristicHazard'{} | #'CosTransactions_TransactionRolledBack'{}
If possible, the Resource should commit all changes made as part of the transaction, else it should raise the TRANSACTION_ROLLEDBACK exception. This operation can only be used if the Resource is the only child of its parent.
Resource = #objref
Return = ok
This operation informs the Resource that it is safe to forget any Heuristic decisions and the knowledge of the transaction.
Resource = #objref
Return = Vote | {'EXCEPTION', E}
Vote = 'VoteReadOnly' | 'VoteCommit' | 'VoteRollback'
E = #'CosTransactions_HeuristicMixed'{} | #'CosTransactions_HeuristicHazard'{}
This operation is invoked on the Resource to begin the two-phase commit protocol.
The Resource can reply:
forget
operation is performed.Resource = #objref
Return = ok | {'EXCEPTION', E}
E = #'CosTransactions_HeuristicCommit'{} | #'CosTransactions_HeuristicMixed'{} | #'CosTransactions_HeuristicHazard'{}
This operation instructs the Resource to rollback all changes made as a part of the transaction.
The Resource can raise:
forget
operation is performed.