Interface TransactionServices

All Known Implementing Classes:
TransactionServicesImpl

public interface TransactionServices
Defines the interface between WS-AT and underlying transaction processing system
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    commit(byte[] tId)
    Called by Participant endpoint to commit tx/subordinate branch
    enlistResource(XAResource resource, Xid xid)
    Called by Registraion Service during register call in order to enlist WSAT XAResource (this is essentially the WSAT participant EPR wrapper that is serialized for recovery) and return branchqual in order to create RegisterResponseType
    byte[]
    The tx id of the tx on this thread
    javax.xml.ws.EndpointReference
    Called from Participant service to get the Coordinator(PortType) for this Xid
    importTransaction(int timeout, byte[] tId)
    Called by server tube (WSATServerHelper) to infect thread with tx
    prepare(byte[] tId)
    Called by Participant endpoint to prepare tx/subordinate branch
    void
    registerSynchronization(javax.transaction.Synchronization synchronization, Xid xid)
    Called by Registration service to register a volatile participant
    void
    Called by Coordinator replay operation Bottom-up recovery call, as in JTS, a hint to resend
    void
    rollback(byte[] tId)
    Called by Participant endpoint to prepare tx/subordinate branch
  • Method Details

    • getGlobalTransactionId

      byte[] getGlobalTransactionId()
      The tx id of the tx on this thread
      Returns:
      byte[] tid
    • enlistResource

      Xid enlistResource(XAResource resource, Xid xid) throws WSATException
      Called by Registraion Service during register call in order to enlist WSAT XAResource (this is essentially the WSAT participant EPR wrapper that is serialized for recovery) and return branchqual in order to create RegisterResponseType
      Parameters:
      resource - (WSAT)XAResource
      xid - Xid
      Returns:
      byte[] branchqual to use for
      Throws:
      WSATException - any error during enlist as WSAT GatewayRM
    • registerSynchronization

      void registerSynchronization(javax.transaction.Synchronization synchronization, Xid xid) throws WSATException
      Called by Registration service to register a volatile participant
      Parameters:
      synchronization - javax.transaction.Synchronization
      xid - Xid
      Throws:
      WSATException - wsatXAResource
    • importTransaction

      Xid importTransaction(int timeout, byte[] tId) throws WSATException
      Called by server tube (WSATServerHelper) to infect thread with tx
      Parameters:
      timeout - timeout/ttl
      tId - byte[]
      Throws:
      WSATException - wsatXAResource
    • prepare

      String prepare(byte[] tId) throws WSATException
      Called by Participant endpoint to prepare tx/subordinate branch
      Parameters:
      tId - byte[]
      Returns:
      String vote, see WSATConstants
      Throws:
      WSATException - wsatXAResource
    • commit

      void commit(byte[] tId) throws WSATException
      Called by Participant endpoint to commit tx/subordinate branch
      Parameters:
      tId - byte[]
      Throws:
      WSATException - wsatXAResource
    • rollback

      void rollback(byte[] tId) throws WSATException
      Called by Participant endpoint to prepare tx/subordinate branch
      Parameters:
      tId - byte[]
      Throws:
      WSATException - wsatXAResource
    • replayCompletion

      void replayCompletion(String tId, XAResource xaResource) throws WSATException
      Called by Coordinator replay operation Bottom-up recovery call, as in JTS, a hint to resend
      Parameters:
      tId - byte[]
      xaResource - (WSAT)XAResource
      Throws:
      WSATException - wsatXAResource
    • getParentReference

      javax.xml.ws.EndpointReference getParentReference(Xid xid)
      Called from Participant service to get the Coordinator(PortType) for this Xid
      Parameters:
      xid - Xid
      Returns:
      EndpointReference of Coordinator (as obtained from earlier RegisterResponse)