From 84adefa331c4159d432d22840663c38f155cd4c1 Mon Sep 17 00:00:00 2001 From: Erlang/OTP Date: Fri, 20 Nov 2009 14:54:40 +0000 Subject: The R13B03 release. --- .../doc/src/CosTransactions_Resource.xml | 128 +++++++++++++++++++++ 1 file changed, 128 insertions(+) create mode 100644 lib/cosTransactions/doc/src/CosTransactions_Resource.xml (limited to 'lib/cosTransactions/doc/src/CosTransactions_Resource.xml') diff --git a/lib/cosTransactions/doc/src/CosTransactions_Resource.xml b/lib/cosTransactions/doc/src/CosTransactions_Resource.xml new file mode 100644 index 0000000000..1f091a5092 --- /dev/null +++ b/lib/cosTransactions/doc/src/CosTransactions_Resource.xml @@ -0,0 +1,128 @@ + + + + +
+ + 19992009 + Ericsson AB. All Rights Reserved. + + + The contents of this file are subject to the Erlang Public License, + Version 1.1, (the "License"); you may not use this file except in + compliance with the License. You should have received a copy of the + Erlang Public License along with this software. If not, it can be + retrieved online at http://www.erlang.org/. + + Software distributed under the License is distributed on an "AS IS" + basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See + the License for the specific language governing rights and limitations + under the License. + + + + CosTransactions_Resource + + + + 1999-04-12 + PA1 +
+ CosTransactions_Resource + This module implements the OMG CosTransactions::Resource interface. + +

To get access to the record definitions for the structures use:

+-include_lib("cosTransactions/include/CosTransactions.hrl").

+
+ + + commit(Resource) -> Return + Instruct the target object to commit the transaction + + 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:

+ + Heuristic Exception - if a Heuristic decision is made which differ + from the true outcome of the transaction. The Resource must remember + the Heuristic outcome until the forget operation is performed. + +
+
+ + commit_one_phase(Resource) -> Return + Instruct the target object to commit the transaction + + 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.

+
+
+ + forget(Resource) -> Return + Instruct the target object to forget any heuristic decisions + + Resource = #objref + Return = ok + + +

This operation informs the Resource that it is safe to forget any Heuristic + decisions and the knowledge of the transaction.

+
+
+ + prepare(Resource) -> Return + Instruct the target object to begin the two-phase commit protocol + + 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:

+ + 'VoteReadOnly' - if no persistent data has been modified by the transaction. + The Resource can forget all knowledge of the transaction. + 'VoteCommit' - if the Resource has been prepared and is able to write all the + data needed to commit the transaction to stable storage. + 'VoteRollback' - under any circumstances but must do so if none of the alternatives above + are applicable. + Heuristic Exception - if a Heuristic decision is made which differ + from the true outcome of the transaction. The Resource must remember + the Heuristic outcome until the forget operation is performed. + +
+
+ + rollback(Resource) -> Return + Instruct the target object to rollback the transaction + + 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:

+ + Heuristic Exception - if a Heuristic decision is made which differ + from the true outcome of the transaction. The Resource must remember + the Heuristic outcome until the forget operation is performed. + +
+
+
+ +
+ -- cgit v1.2.3