|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface TM
Transaction Manager Interface
The default set of APIs except register(String)
is exposed to WC
.
Please define extra APIs as necessary to implement two-phase commit.
Method Summary | |
---|---|
void |
abort(Transaction xid)
abort transaction |
void |
commit(Transaction xid)
commit transaction |
boolean |
enlist(Transaction xid,
String enlistingRM)
enlist the RM as a member of this transaction |
void |
register(String rm)
A RM of which name is rm register itself
so that later TM could coordinate for two-phase commit. |
Transaction |
start()
start a new transaction |
Method Detail |
---|
Transaction start() throws RemoteException
RemoteException
WC.start()
void commit(Transaction xid) throws InvalidTransactionException, TransactionAbortedException, RemoteException
xid
- transaction identifier
InvalidTransactionException
TransactionAbortedException
RemoteException
WC.commit(Transaction)
void abort(Transaction xid) throws RemoteException
xid
- transaction identifier
RemoteException
WC.abort(Transaction)
boolean enlist(Transaction xid, String enlistingRM) throws TransactionAbortedException, InvalidTransactionException, RemoteException
xid
- transaction identifierenlistingRM
- RM to add to transaction identified by xid
true
when enlisted. false
otherwise.
TransactionAbortedException
InvalidTransactionException
RemoteException
RM.getName()
void register(String rm) throws RemoteException
rm
register itself
so that later TM could coordinate for two-phase commit.
On invocation, the TM contact registry to setup RPC (RMI for Java).
rm
- name of newly started resource manager
RemoteException
RM.getName()
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |