1CosTransactions_Coordinator(E3r)lang Module DefinitiCoonsTransactions_Coordinator(3)
2
3
4

NAME

6       CosTransactions_Coordinator  - This module implements the OMG CosTrans‐
7       actions::Coordinator interface.
8

DESCRIPTION

10       To get access to the record definitions for the structures use:
11       -include_lib("cosTransactions/include/CosTransactions.hrl").
12

EXPORTS

14       create_subtransaction(Coordinator) -> Control
15
16              Types:
17
18                 Coordinator = #objref
19                 Control = #objref
20
21              A new subtransaction is created whose parent is the  Coordinator
22              argument.
23
24              Raises exception:
25
26                * 'SubtransactionsUnavailable'  -  if  nested transactions are
27                  not supported.
28
29                * 'Inactive' - if target transaction  has  already  been  pre‐
30                  pared.
31
32       get_transaction_name(Coordinator) -> Name
33
34              Types:
35
36                 Coordinator = #objref
37                 Name = string() of type "oe_name@machine_type_timestamp"
38
39              Returns  a printable string, which describe the transaction. The
40              main purpose is to support debugging.
41
42       get_parent_status(Coordinator) -> Status
43
44              Types:
45
46                 Coordinator = #objref
47                 Status = atom()
48
49              Returns the status of the parent transaction associated with the
50              target  object.  If the target object is a top-level transaction
51              this operation is equivalent to get_status/1 operation.
52
53              Possible Status replies:
54
55                * 'StatusCommitted'
56
57                * 'StatusCommitting'
58
59                * 'StatusMarkedRollback'
60
61                * 'StatusRollingBack'
62
63                * 'StatusRolledBack'
64
65                * 'StatusActive'
66
67                * 'StatusPrepared'
68
69                * 'StatusUnknown'
70
71                * 'StatusNoTransaction'
72
73                * 'StatusPreparing'
74
75       get_status(Coordinator) -> Status
76
77              Types:
78
79                 Coordinator = #objref
80                 Status = atom()
81
82              Returns the status of the transaction associated with the target
83              object.
84
85       get_top_level_status(Coordinator) -> Status
86
87              Types:
88
89                 Coordinator = #objref
90                 Status = atom()
91
92              Returns  the status of the top-level transaction associated with
93              the target object.
94
95       hash_top_level_tran(Coordinator) -> Return
96
97              Types:
98
99                 Coordinator = #objref
100                 Return = integer()
101
102              Returns a hash code for  the  top-level  transaction  associated
103              with  the target object. Equals the operation hash_transaction/1
104              if the target object is a top-level transaction.
105
106       hash_transaction(Coordinator) -> Return
107
108              Types:
109
110                 Coordinator = #objref
111                 Return = integer()
112
113              Returns a hash code for the transaction associated with the tar‐
114              get object.
115
116       is_descendant_transaction(Coordinator, OtherCoordinator) -> Return
117
118              Types:
119
120                 Coordinator = #objref
121                 OtherCoordinator = #objref
122                 Return = Boolean
123
124              Returns  true  if  the  transaction  associated  with the target
125              object is a descendant of the transaction  associated  with  the
126              parameter object.
127
128       is_same_transaction(Coordinator, OtherCoordinator) -> Return
129
130              Types:
131
132                 Coordinator = #objref
133                 OtherCoordinator = #objref
134                 Return = Boolean
135
136              Returns  true  if  the  transaction  associated  with the target
137              object is related to the transaction associated with the parame‐
138              ter object.
139
140       is_top_level_transaction(Coordinator) -> Return
141
142              Types:
143
144                 Coordinator = #objref
145                 Return = Boolean
146
147              Returns  true  if  the  transaction  associated  with the target
148              object is a top-level transaction.
149
150       register_resource(Coordinator, Resource) -> RecoveryCoordinator
151
152              Types:
153
154                 Coordinator = #objref
155                 Resource = #objref
156                 RecoveryCoordinator = #objref
157
158              This operation registers the parameter Resource object as a par‐
159              ticipant  in  the transaction associated with the target object.
160              The RecoveryCoordinator returned by this operation can  be  used
161              by this Resource during recovery.
162
163          Note:
164              The  Resources  will  be  called in FIFO-order when preparing or
165              committing. Hence, be sure to register the Resources in the cor‐
166              rect order.
167
168
169              Raises exception:
170
171                * 'Inactive'  -  if  target  transaction has already been pre‐
172                  pared.
173
174       register_subtran_aware(Coordinator,   SubtransactionAwareResource)   ->
175       Return
176
177              Types:
178
179                 Coordinator = #objref
180                 Return = ok
181
182              This  operation  registers  the parameter SubtransactionAwareRe‐
183              source object such that it will be notified  when  the  transac‐
184              tion,  associated wit the target object, has committed or rolled
185              back.
186
187          Note:
188              The Resources will be called in FIFO-order. Hence,  be  sure  to
189              register the Resources in the correct order.
190
191
192       rollback_only(Coordinator) -> Return
193
194              Types:
195
196                 Coordinator = #objref
197                 Return = ok
198
199              The transaction associated with the target object is modified so
200              the only possible outcome is to rollback the transaction.
201
202
203
204Ericsson AB                  cosTransactions 4.5.C2osTransactions_Coordinator(3)
Impressum