Package org.firebirdsql.gds.ng.jna
Class AbstractNativeDatabaseFactory
java.lang.Object
org.firebirdsql.gds.ng.jna.AbstractNativeDatabaseFactory
- All Implemented Interfaces:
FbDatabaseFactory
- Direct Known Subclasses:
FbClientDatabaseFactory,FbEmbeddedDatabaseFactory,FbLocalDatabaseFactory
Common implementation for client library and embedded database factory.
- Since:
- 3.0
- Author:
- Mark Rotteveel
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionconnect(IConnectionProperties connectionProperties) Connects to a Firebird server based on the supplied connection properties.protected abstract FbClientLibraryCreates and initialize a new instance of the client library.protected <T extends IAttachProperties<T>>
TfilterProperties(T attachProperties) Allows the database factory to perform modification of the attach properties before use.protected FbClientLibraryGets the current instance of the client library.serviceConnect(IServiceProperties serviceProperties) Connects to the service manager of a Firebird server with the supplied service properties.
-
Constructor Details
-
AbstractNativeDatabaseFactory
public AbstractNativeDatabaseFactory()
-
-
Method Details
-
connect
Description copied from interface:FbDatabaseFactoryConnects to a Firebird server based on the supplied connection properties.The
FbDatabaseinstance will be connected to the server, but is not yet attached.- Specified by:
connectin interfaceFbDatabaseFactory- Parameters:
connectionProperties- Connection properties- Returns:
- Database instance
- Throws:
SQLException
-
serviceConnect
Description copied from interface:FbDatabaseFactoryConnects to the service manager of a Firebird server with the supplied service properties.- Specified by:
serviceConnectin interfaceFbDatabaseFactory- Parameters:
serviceProperties- Service properties- Returns:
- Service instance
- Throws:
SQLException
-
getClientLibrary
Gets the current instance of the client library.Most implementations should not override this method (contrary to previous versions of Jaybird), to ensure native libraries are properly disposed of.
- Returns:
- Client library instance.
-
createClientLibrary
Creates and initialize a new instance of the client library.Instances should not be cached (caching - if any - is the responsibility of the caller).
- Returns:
- new client library instance
- Since:
- 4.0
-
filterProperties
Allows the database factory to perform modification of the attach properties before use.Implementations should be prepared to handle immutable attach properties. Implementations are strongly advised to copy the attach properties before modification and return this copy.
- Type Parameters:
T- Type of attach properties- Parameters:
attachProperties- Attach properties- Returns:
- Filtered properties
-