Interface LocalTransaction


  • public interface LocalTransaction
    The LocalTransaction defines a transaction demarcation interface for resource manager local transactions. Note that this interface is used for application level local transaction demarcation. The system contract level LocalTransaction interface (as defined in the jakarta.resource.spi package) is used by the container for local transaction management.

    A local transaction is managed internal to a resource manager. There is no external transaction manager involved in the coordination of such transactions.

    A CCI implementation can (but is not required to) implement the LocalTransaction interface. If the LocalTransaction interface is supported by a CCI implementation, then the method Connection.getLocalTransaction should return a LocalTransaction instance. A component can then use the returned LocalTransaction to demarcate a resource manager local transaction (associated with the Connection instance) on the underlying EIS instance.

    Since:
    0.8
    Author:
    Rahul Sharma
    See Also:
    Connection
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      void begin()
      Begins a local transaction on an EIS instance.
      void commit()
      Commits the current local transaction and release all locks held by the underlying EIS instance.
      void rollback()
      Rollbacks the current resource manager local transaction.
    • Method Detail

      • begin

        void begin()
            throws ResourceException
        Begins a local transaction on an EIS instance.
        Throws:
        ResourceException - Failed to begin a local transaction. Examples of error cases are:
        • Resource adapter internal or EIS-specific error
        • Connection is already participating in a local or Jakarta™ Transactions transaction
      • commit

        void commit()
             throws ResourceException
        Commits the current local transaction and release all locks held by the underlying EIS instance.
        Throws:
        ResourceException - Failed to commit a local transaction. Examples of error cases are:
        • Resource adapter internal or EIS-specific error
        • Violation of integrity constraints, deadlock detection, communication failure during transaction completion, or any retry requirement
        • Connection is participating in an active Jakarta Transactions transaction
        • Invalid transaction context; commit operation invoked without an active transaction context
      • rollback

        void rollback()
               throws ResourceException
        Rollbacks the current resource manager local transaction.
        Throws:
        ResourceException - Failed to rollback a local transaction. Examples of error cases are:
        • Resource adapter internal or EIS-specific error
        • Connection is participating in an active Jakarta Transactions transaction
        • Invalid transaction context; rollback operation invoked without an active transaction context