java.lang.Object
org.firebirdsql.gds.ng.wire.AbstractProtocolDescriptor
- All Implemented Interfaces:
ProtocolDescriptor
- Direct Known Subclasses:
Version10Descriptor,Version11Descriptor,Version12Descriptor,Version13Descriptor,Version15Descriptor,Version16Descriptor,Version18Descriptor
Abstract class to simplify implementation of
ProtocolDescriptor- Since:
- 3.0
- Author:
- Mark Rotteveel
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedAbstractProtocolDescriptor(int version, int architecture, int minimumType, int maximumType, boolean supportsWireCompression, int weight) Initializes the basic ProtocolDescriptor fields. -
Method Summary
Modifier and TypeMethodDescriptionfinal ServiceParameterBufferCreate an attachServiceParameterBufferimplementation and populate it with supported properties for this protocol version.createBlrCalculator(FbWireDatabase database) CreateBlrCalculatorimplementation for this protocol version.final DatabaseParameterBuffercreateDatabaseParameterBuffer(WireDatabaseConnection connection) CreateDatabaseParameterBufferimplementation and populate it with supported properties for this protocol version.booleanfinal intfinal intfinal intprotected abstract ParameterConverter<WireDatabaseConnection,WireServiceConnection> final intfinal intfinal inthashCode()final booleanMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.firebirdsql.gds.ng.wire.ProtocolDescriptor
createAsynchronousChannel, createDatabase, createInputBlob, createOutputBlob, createService, createServiceParameterBuffer, createServiceRequestBuffer, createStatement, createTransaction, createWireOperations
-
Constructor Details
-
AbstractProtocolDescriptor
protected AbstractProtocolDescriptor(int version, int architecture, int minimumType, int maximumType, boolean supportsWireCompression, int weight) Initializes the basic ProtocolDescriptor fields.- Parameters:
version- Version of the protocolarchitecture- Architecture of the protocolminimumType- Minimum supported protocol typemaximumType- Maximum supported protocol typesupportsWireCompression-trueif this version supports zlib wire compressionweight- Selection weight (higher values have higher preference)
-
-
Method Details
-
getVersion
public final int getVersion()- Specified by:
getVersionin interfaceProtocolDescriptor- Returns:
- The protocol version
-
getArchitecture
public final int getArchitecture()- Specified by:
getArchitecturein interfaceProtocolDescriptor- Returns:
- Protocol architecture
-
getMinimumType
public final int getMinimumType()- Specified by:
getMinimumTypein interfaceProtocolDescriptor- Returns:
- Minimum supported protocol type
-
getMaximumType
public final int getMaximumType()- Specified by:
getMaximumTypein interfaceProtocolDescriptor- Returns:
- Maximum supported protocol type
-
supportsWireCompression
public final boolean supportsWireCompression()- Specified by:
supportsWireCompressionin interfaceProtocolDescriptor- Returns:
truewhen zlib wire compression is supported
-
getWeight
public final int getWeight()- Specified by:
getWeightin interfaceProtocolDescriptor- Returns:
- Preference weight
-
createBlrCalculator
Description copied from interface:ProtocolDescriptorCreateBlrCalculatorimplementation for this protocol version.- Specified by:
createBlrCalculatorin interfaceProtocolDescriptor- Parameters:
database- FbWireDatabase of the current database- Returns:
- BlrCalculator implementation
-
hashCode
public final int hashCode() -
equals
Default implementation for the rules described in
ProtocolDescriptor. Returnstrueif the other object is of the exact same class as this instance. -
createDatabaseParameterBuffer
public final DatabaseParameterBuffer createDatabaseParameterBuffer(WireDatabaseConnection connection) throws SQLException Description copied from interface:ProtocolDescriptorCreateDatabaseParameterBufferimplementation and populate it with supported properties for this protocol version.- Specified by:
createDatabaseParameterBufferin interfaceProtocolDescriptor- Parameters:
connection- Connection- Returns:
- DatabaseParameterBuffer implementation
- Throws:
SQLException
-
createAttachServiceParameterBuffer
public final ServiceParameterBuffer createAttachServiceParameterBuffer(WireServiceConnection connection) throws SQLException Description copied from interface:ProtocolDescriptorCreate an attachServiceParameterBufferimplementation and populate it with supported properties for this protocol version.- Specified by:
createAttachServiceParameterBufferin interfaceProtocolDescriptor- Parameters:
connection- Connection- Returns:
- ServiceParameterBuffer implementation for attach
- Throws:
SQLException
-
getParameterConverter
protected abstract ParameterConverter<WireDatabaseConnection,WireServiceConnection> getParameterConverter()- Returns:
ParameterConverterfor populating the database parameter buffer.
-