Class JnaTransaction

    • Constructor Detail

      • JnaTransaction

        public JnaTransaction​(JnaDatabase database,
                              com.sun.jna.ptr.IntByReference transactionHandle,
                              TransactionState initialState)
        Initializes AbstractFbTransaction.
        Parameters:
        database - FbDatabase that created this handle.
        transactionHandle - Transaction handle
        initialState - Initial transaction state (allowed values are TransactionState.ACTIVE and TransactionState.PREPARED)
    • Method Detail

      • getHandle

        public int getHandle()
        Returns:
        The Firebird transaction handle identifier
      • getJnaHandle

        public com.sun.jna.ptr.IntByReference getJnaHandle()
      • commit

        public void commit()
                    throws java.sql.SQLException
        Description copied from interface: FbTransaction
        Commit the transaction
        Throws:
        java.sql.SQLException
      • rollback

        public void rollback()
                      throws java.sql.SQLException
        Description copied from interface: FbTransaction
        Roll back the transaction
        Throws:
        java.sql.SQLException
      • prepare

        public void prepare​(byte[] recoveryInformation)
                     throws java.sql.SQLException
        Description copied from interface: FbTransaction
        Prepare the transaction for two-phase commit/rollback.
        Parameters:
        recoveryInformation - Transaction recovery information (stored in RDB$TRANSACTION_DESCRIPTION of RDB$TRANSACTIONS), or null to prepare without recovery information.
        Throws:
        java.sql.SQLException
      • getTransactionInfo

        public byte[] getTransactionInfo​(byte[] requestItems,
                                         int maxBufferLength)
                                  throws java.sql.SQLException
        Description copied from interface: FbTransaction
        Performs a transaction info request.
        Parameters:
        requestItems - Information items to request
        maxBufferLength - Maximum response buffer length to use
        Returns:
        The response buffer (note: length is the actual length of the response, not maxBufferLength
        Throws:
        java.sql.SQLException - For errors retrieving the information.