public interface ProtocolDescriptor
The driver maintains a list of default protocol descriptors that are loaded using a ServiceLoader
from the file META-INF/services/org.firebirdsql.gds.ng.wire.ProtocolDescriptor
Protocol descriptors loaded this way are required to adhere to the following rules:
Object.hashCode()
.Object.equals(Object)
implementationint getVersion()
int getArchitecture()
int getMinimumType()
int getMaximumType()
boolean supportsWireCompression()
true
when zlib wire compression is supportedint getWeight()
FbWireDatabase createDatabase(WireDatabaseConnection connection)
FbWireDatabase
implementation for this protocol.connection
- WireDatabaseConnection to this databaseFbWireService createService(WireServiceConnection connection)
FbWireService
implementation for this protocol.connection
- WireServiceConnection to this serviceFbWireTransaction createTransaction(FbWireDatabase database, int transactionHandle, TransactionState initialState)
FbTransaction
implementation for this protocol.database
- FbWireDatabase of the current databasetransactionHandle
- Transaction handleinitialState
- Initial transaction state (either TransactionState.ACTIVE
or TransactionState.PREPARED
).FbWireStatement createStatement(FbWireDatabase database)
FbStatement
implementation for this protocol.database
- FbWireDatabase of the current databaseDatabaseParameterBuffer createDatabaseParameterBuffer(WireDatabaseConnection connection) throws java.sql.SQLException
DatabaseParameterBuffer
implementation and populate it with supported
properties for this protocol version.connection
- Connectionjava.sql.SQLException
ServiceParameterBuffer createAttachServiceParameterBuffer(WireServiceConnection connection) throws java.sql.SQLException
ServiceParameterBuffer
implementation and populate it with supported properties for
this protocol version.connection
- Connectionjava.sql.SQLException
ServiceParameterBuffer createServiceParameterBuffer(WireServiceConnection connection)
ServiceParameterBuffer
.connection
- ConnectionServiceRequestBuffer createServiceRequestBuffer(WireServiceConnection connection)
BlrCalculator createBlrCalculator(FbWireDatabase database)
BlrCalculator
implementation for this protocol version.database
- FbWireDatabase of the current databaseFbWireBlob createOutputBlob(FbWireDatabase database, FbWireTransaction transaction, BlobParameterBuffer blobParameterBuffer)
FbWireBlob
implementation for this protocol version.database
- FbWireDatabase of the current databasetransaction
- FbWireTransaction to associate with the blobblobParameterBuffer
- Blob Parameter BufferFbWireBlob createInputBlob(FbWireDatabase database, FbWireTransaction transaction, BlobParameterBuffer blobParameterBuffer, long blobId)
FbWireBlob
implementation for this protocol version.database
- FbWireDatabase of the current databasetransaction
- FbWireTransaction to associate with the blobblobParameterBuffer
- Blob Parameter BufferblobId
- Blob Id (must be non-zero for input blob)FbWireAsynchronousChannel createAsynchronousChannel(FbWireDatabase database)
database
- The parent database handle.FbWireOperations createWireOperations(WireConnection<?,?> connection, WarningMessageCallback defaultWarningMessageCallback)
FbWireOperations
implementation for this protocol version.connection
- WireConnection instancedefaultWarningMessageCallback
- Default warning message callbackCopyright © 2001-2023 Jaybird (Firebird JDBC) team. All rights reserved.