Package jakarta.resource.spi
Interface XATerminator
- 
 public interface XATerminatorThe XATerminator interface is used for transaction completion and crash recovery flows. - Version:
- 1.0
- Author:
- Ram Jeyaraman
 
- 
- 
Method SummaryAll Methods Instance Methods Abstract Methods Modifier and Type Method Description voidcommit(Xid xid, boolean onePhase)Commits the global transaction specified by xid.voidforget(Xid xid)Tells the resource manager to forget about a heuristically completed transaction branch.intprepare(Xid xid)Ask the resource manager to prepare for a transaction commit of the transaction specified in xid.Xid[]recover(int flag)Obtains a list of prepared transaction branches from a resource manager.voidrollback(Xid xid)Informs the resource manager to roll back work done on behalf of a transaction branch.
 
- 
- 
- 
Method Detail- 
commitvoid commit(Xid xid, boolean onePhase) throws XAException Commits the global transaction specified by xid.- Parameters:
- xid- A global transaction identifier
- onePhase- If true, the resource manager should use a one-phase commit protocol to commit the work done on behalf of xid.
- Throws:
- XAException- An error has occurred. Possible XAExceptions are XA_HEURHAZ, XA_HEURCOM, XA_HEURRB, XA_HEURMIX, XAER_RMERR, XAER_RMFAIL, XAER_NOTA, XAER_INVAL, or XAER_PROTO.- If the resource manager did not commit the transaction and the parameter onePhase is set to true, the resource manager may throw one of the XA_RB* exceptions. Upon return, the resource manager has rolled back the branch's work and has released all held resources. 
 
 - 
forgetvoid forget(Xid xid) throws XAException Tells the resource manager to forget about a heuristically completed transaction branch.- Parameters:
- xid- A global transaction identifier.
- Throws:
- XAException- An error has occurred. Possible exception values are XAER_RMERR, XAER_RMFAIL, XAER_NOTA, XAER_INVAL, or XAER_PROTO.
 
 - 
prepareint prepare(Xid xid) throws XAException Ask the resource manager to prepare for a transaction commit of the transaction specified in xid.- Parameters:
- xid- A global transaction identifier.
- Returns:
- A value indicating the resource manager's vote on the
 outcome of the transaction. The possible values are: XA_RDONLY
 or XA_OK. These constants are defined in 
 javax.transaction.xa.XAResourceinterface. If the resource manager wants to roll back the transaction, it should do so by raising an appropriate XAException in the prepare method.
- Throws:
- XAException- An error has occurred. Possible exception values are: XA_RB*, XAER_RMERR, XAER_RMFAIL, XAER_NOTA, XAER_INVAL, or XAER_PROTO.
 
 - 
recoverXid[] recover(int flag) throws XAException Obtains a list of prepared transaction branches from a resource manager. The transaction manager calls this method during recovery to obtain the list of transaction branches that are currently in prepared or heuristically completed states.- Parameters:
- flag- One of TMSTARTRSCAN, TMENDRSCAN, TMNOFLAGS. TMNOFLAGS must be used when no other flags are set in the parameter. These constants are defined in- javax.transaction.xa.XAResourceinterface.
- Returns:
- The resource manager returns zero or more XIDs of the transaction branches that are currently in a prepared or heuristically completed state. If an error occurs during the operation, the resource manager should throw the appropriate XAException.
- Throws:
- XAException- An error has occurred. Possible values are XAER_RMERR, XAER_RMFAIL, XAER_INVAL, and XAER_PROTO.
 
 - 
rollbackvoid rollback(Xid xid) throws XAException Informs the resource manager to roll back work done on behalf of a transaction branch.- Parameters:
- xid- A global transaction identifier.
- Throws:
- XAException- An error has occurred. Possible XAExceptions are XA_HEURHAZ, XA_HEURCOM, XA_HEURRB, XA_HEURMIX, XAER_RMERR, XAER_RMFAIL, XAER_NOTA, XAER_INVAL, or XAER_PROTO.- If the transaction branch is already marked rollback-only the resource manager may throw one of the XA_RB* exceptions. Upon return, the resource manager has rolled back the branch's work and has released all held resources. 
 
 
- 
 
-