Class LocalXAConnectionFactory

  • All Implemented Interfaces:
    ConnectionFactory, XAConnectionFactory

    public class LocalXAConnectionFactory
    extends java.lang.Object
    implements XAConnectionFactory
    An implementation of XAConnectionFactory which manages non-XA connections in XA transactions. A non-XA connection commits and rolls back as part of the XA transaction, but is not recoverable since the connection does not implement the 2-phase protocol.
    Since:
    2.0
    • Constructor Summary

      Constructors 
      Constructor Description
      LocalXAConnectionFactory​(javax.transaction.TransactionManager transactionManager, ConnectionFactory connectionFactory)
      Creates an LocalXAConnectionFactory which uses the specified connection factory to create database connections.
    • Constructor Detail

      • LocalXAConnectionFactory

        public LocalXAConnectionFactory​(javax.transaction.TransactionManager transactionManager,
                                        ConnectionFactory connectionFactory)
        Creates an LocalXAConnectionFactory which uses the specified connection factory to create database connections. The connections are enlisted into transactions using the specified transaction manager.
        Parameters:
        transactionManager - the transaction manager in which connections will be enlisted
        connectionFactory - the connection factory from which connections will be retrieved
    • Method Detail

      • createConnection

        public java.sql.Connection createConnection()
                                             throws java.sql.SQLException
        Description copied from interface: XAConnectionFactory
        Create a new Connection in an implementation specific fashion.

        An implementation can assume that the caller of this will wrap the connection in a proxy that protects access to the setAutoCommit, commit and rollback when enrolled in a XA transaction.

        Specified by:
        createConnection in interface ConnectionFactory
        Specified by:
        createConnection in interface XAConnectionFactory
        Returns:
        a new Connection
        Throws:
        java.sql.SQLException - if a database error occurs creating the connection
      • getConnectionFactory

        public ConnectionFactory getConnectionFactory()
        Returns:
        The connection factory.
        Since:
        2.6.0
      • getTransactionRegistry

        public TransactionRegistry getTransactionRegistry()
        Description copied from interface: XAConnectionFactory
        Gets the TransactionRegistry for this connection factory which contains a the XAResource for every connection created by this factory.
        Specified by:
        getTransactionRegistry in interface XAConnectionFactory
        Returns:
        the transaction registry for this connection factory