man CosTransactions_Coordinator () - This module implements the OMG CosTransactions::Coordinator interface.
NAME
CosTransactions_Coordinator - This module implements the OMG CosTransactions::Coordinator interface.
DESCRIPTION
To get access to the record definitions for the structures use:
-include_lib("cosTransactions/include/CosTransactions.hrl").
EXPORTS
create_subtransaction(Coordinator) -> Control
- Types
- Coordinator = #objref
Control = #objref
A new subtransaction is created whose parent is the Coordinator argument.
Raises exception:
- *
- 'SubtransactionsUnavailable' - if nested transactions are not supported.
- *
- 'Inactive' - if target transaction has already been prepared.
get_transaction_name(Coordinator) -> Name
- Types
- Coordinator = #objref
Name = string() of type "oe_name@machine_type_timestamp"
Returns a printable string, which describe the transaction. The main purpose is to support debugging.
get_parent_status(Coordinator) -> Status
- Types
- Coordinator = #objref
Status = atom()
Returns the status of the parent transaction associated with the target object. If the target object is a top-level transaction this operation is equivalent to get_status/1 operation.
Possible Status replies:
- *
- 'StatusCommitted'
- *
- 'StatusCommitting'
- *
- 'StatusMarkedRollback'
- *
- 'StatusRollingBack'
- *
- 'StatusRolledBack'
- *
- 'StatusActive'
- *
- 'StatusPrepared'
- *
- 'StatusUnknown'
- *
- 'StatusNoTransaction'
- *
- 'StatusPreparing'
get_status(Coordinator) -> Status
- Types
- Coordinator = #objref
Status = atom()
Returns the status of the transaction associated with the target object.
get_top_level_status(Coordinator) -> Status
- Types
- Coordinator = #objref
Status = atom()
Returns the status of the top-level transaction associated with the target object.
hash_top_level_tran(Coordinator) -> Return
- Types
- Coordinator = #objref
Return = integer()
Returns a hash code for the top-level transaction associated with the target object. Equals the operation hash_transaction/1 if the target object is a top-level transaction.
hash_transaction(Coordinator) -> Return
- Types
- Coordinator = #objref
Return = integer()
Returns a hash code for the transaction associated with the target object.
is_descendant_transaction(Coordinator, OtherCoordinator) -> Return
- Types
- Coordinator = #objref
OtherCoordinator = #objref
Return = Boolean
Returns true if the transction associated with the target object is a descendant of the transaction associated with the parameter object.
is_same_transaction(Coordinator, OtherCoordinator) -> Return
- Types
- Coordinator = #objref
OtherCoordinator = #objref
Return = Boolean
Returns true if the transction associated with the target object is related to the transaction associated with the parameter object.
is_top_level_transaction(Coordinator) -> Return
- Types
- Coordinator = #objref
Return = Boolean
Returns true if the transction associated with the target object is a top-level transaction.
register_resource(Coordinator, Resource) -> RecoveryCoordinator
- Types
- Coordinator = #objref
Resource = #objref
RecoveryCoordinator = #objref
This operation registers the parameter Resource object as a participant in the transaction associated with the target object. The RecoveryCoordinator returned by this operation can be used by this Resource during recovery.
Note:
The Resources will be called in FIFO-order when preparing or committing. Hence, be sure to register the Resources in the correct order.
Raises exception:
- *
- 'Inactive' - if target transaction has already been prepared.
register_subtran_aware(Coordinator, SubtransactionAwareResource) -> Return
- Types
- Coordinator = #objref
Return = ok
This operation registers the parameter SubtransactionAwareResource object such that it will be notified when the transaction, associated wit the target object, has committed or rolled back.
Note:
The Resources will be called in FIFO-order. Hence, be sure to register the Resources in the correct order.
rollback_only(Coordinator) -> Return
- Types
- Coordinator = #objref
Return = ok
The transaction associated with the target object is modified so the only possible outcome is to rollback the transaction.
AUTHOR
support - support@erlang.ericsson.se