Class JnaConnection<T extends org.firebirdsql.gds.ng.IAttachProperties<T>,C extends JnaAttachment>

java.lang.Object
org.firebirdsql.gds.ng.AbstractConnection<T,C>
org.firebirdsql.gds.ng.jna.JnaConnection<T,C>
Type Parameters:
T - Type of attach properties
C - Type of connection handle
Direct Known Subclasses:
JnaDatabaseConnection, JnaServiceConnection

public abstract class JnaConnection<T extends org.firebirdsql.gds.ng.IAttachProperties<T>,C extends JnaAttachment> extends org.firebirdsql.gds.ng.AbstractConnection<T,C>
Class handling the initial setup of the JNA connection.
Since:
3.0
Author:
Mark Rotteveel
  • Field Summary

    Fields inherited from class org.firebirdsql.gds.ng.AbstractConnection

    attachProperties
  • Constructor Summary

    Constructors
    Modifier
    Constructor
    Description
    protected
    JnaConnection(FbClientLibrary clientLibrary, T attachProperties, org.firebirdsql.encodings.IEncodingFactory encodingFactory)
    Creates a JnaConnection (without establishing a connection to the server).
  • Method Summary

    Modifier and Type
    Method
    Description
    protected abstract String
    createAttachUrl(org.firebirdsql.gds.impl.DbAttachInfo dbAttachInfo, T attachProperties)
     
    Gets the attach URL for the library.
     
    protected void
    processStatusVector(ISC_STATUS[] statusVector, org.firebirdsql.gds.ng.WarningMessageCallback warningMessageCallback)
     
    protected static String
    toAttachUrl(org.firebirdsql.gds.impl.DbAttachInfo dbAttachInfo)
    Builds the attach URL for the library.

    Methods inherited from class org.firebirdsql.gds.ng.AbstractConnection

    createDbCryptCallback, getAttachProperties, getEncoding, getEncodingDefinition, getEncodingFactory, identify, isLockedByCurrentThread, withLock

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • JnaConnection

      protected JnaConnection(FbClientLibrary clientLibrary, T attachProperties, org.firebirdsql.encodings.IEncodingFactory encodingFactory) throws SQLException
      Creates a JnaConnection (without establishing a connection to the server).
      Parameters:
      clientLibrary - Client library to use
      attachProperties - Attach properties
      encodingFactory - Encoding factory
      Throws:
      SQLException
  • Method Details

    • createAttachUrl

      protected abstract String createAttachUrl(org.firebirdsql.gds.impl.DbAttachInfo dbAttachInfo, T attachProperties) throws SQLException
      Throws:
      SQLException
    • getClientLibrary

      public final FbClientLibrary getClientLibrary()
      Returns:
      The client library instance associated with the connection.
    • processStatusVector

      protected void processStatusVector(ISC_STATUS[] statusVector, org.firebirdsql.gds.ng.WarningMessageCallback warningMessageCallback) throws SQLException
      Throws:
      SQLException
    • getAttachUrl

      public String getAttachUrl()
      Gets the attach URL for the library.
      Returns:
      Attach URL
    • toAttachUrl

      protected static String toAttachUrl(org.firebirdsql.gds.impl.DbAttachInfo dbAttachInfo)
      Builds the attach URL for the library.
      Returns:
      Attach URL