Top Description Fields Constructors Methods
com.mysql.cj.protocol.a

public Class BinaryRowFactory

extends AbstractRowFactory
implements ProtocolEntityFactory<ResultsetRow, NativePacketPayload>
Class Inheritance
All Implemented Interfaces
com.mysql.cj.protocol.ProtocolEntityFactory
Imports
com.mysql.cj.Messages, .MysqlType, com.mysql.cj.conf.PropertyKey, com.mysql.cj.exceptions.ExceptionFactory, com.mysql.cj.protocol.ColumnDefinition, .ProtocolEntityFactory, .Resultset, .Resultset.Concurrency, .ResultsetRow, com.mysql.cj.protocol.a.NativeConstants.StringLengthDataType, .NativeConstants.StringSelfDataType, com.mysql.cj.protocol.a.result.BinaryBufferRow, .ByteArrayRow, com.mysql.cj.result.Field

Handle binary-encoded data for server-side PreparedStatements

Field Summary

Inherited from com.mysql.cj.protocol.a.AbstractRowFactory:
canReuseRowPacketForBufferRowcolumnDefinitionexceptionInterceptorresultSetConcurrencyuseBufferRowSizeThresholdvalueDecoder

Constructor Summary

AccessConstructor and Description
public
BinaryRowFactory(NativeProtocol protocol, ColumnDefinition columnDefinition, Resultset.Concurrency resultSetConcurrency, boolean canReuseRowPacketForBufferRow)

Method Summary

Modifier and TypeMethod and Description
public boolean
public ResultsetRow
createFromMessage(NativePacketPayload
Message instance
rowPacket
)

Overrides default com.mysql.cj.protocol.ProtocolEntityFactory.createFromMessage.

Create ProtocolEntity of type T from protocol message.

private final void
extractNativeEncodedColumn(NativePacketPayload
packet to the
binaryData
,
Field[]
Fields array
fields
,
int
column index
columnIndex
,
byte[][]
byte array.
unpackedRowData
)

Copy the raw result bytes from the

private final ResultsetRow

Returns:

byte[][]
unpackBinaryResultSetRow
(Field[]
Fields array
fields
,
NativePacketPayload
data
binaryData
)

Un-packs binary-encoded result set data for one row

Constructor Detail

BinaryRowFactoryback to summary
public BinaryRowFactory(NativeProtocol protocol, ColumnDefinition columnDefinition, Resultset.Concurrency resultSetConcurrency, boolean canReuseRowPacketForBufferRow)

Method Detail

canReuseRowPacketForBufferRowback to summary
public boolean canReuseRowPacketForBufferRow()

Overrides com.mysql.cj.protocol.a.AbstractRowFactory.canReuseRowPacketForBufferRow.

Annotations
@Override
createFromMessageback to summary
public ResultsetRow createFromMessage(NativePacketPayload rowPacket)

Overrides default com.mysql.cj.protocol.ProtocolEntityFactory.createFromMessage.

Doc from com.mysql.cj.protocol.ProtocolEntityFactory.createFromMessage.

Create ProtocolEntity of type T from protocol message.

Parameters
rowPacket:NativePacketPayload

Message instance

Returns:ResultsetRow

T

Annotations
@Override
extractNativeEncodedColumnback to summary
private final void extractNativeEncodedColumn(NativePacketPayload binaryData, Field[] fields, int columnIndex, byte[][] unpackedRowData)

Copy the raw result bytes from the

Parameters
binaryData:NativePacketPayload

packet to the

fields:Field[]

Fields array

columnIndex:int

column index

unpackedRowData:byte[][]

byte array.

unpackBinaryResultSetRowback to summary
private final ResultsetRow unpackBinaryResultSetRow(Field[] fields, NativePacketPayload binaryData)

Un-packs binary-encoded result set data for one row

Parameters
fields:Field[]

Fields array

binaryData:NativePacketPayload

data

Returns:ResultsetRow

byte[][]