MySQLPacket.decodeColumnCountPacket constructor
MySQLPacket.decodeColumnCountPacket(
- Uint8List buffer
Decodifica um pacote que contém a contagem de colunas MySQLPacketColumnCount.
Implementation
factory MySQLPacket.decodeColumnCountPacket(Uint8List buffer) {
final header = decodePacketHeader(buffer);
final payloadBytes = _extractPayload(buffer, header.$1);
final type = payloadBytes[0];
late MySQLPacketPayload payload;
if (type == 0x00) {
if (payloadBytes.length < 7) {
throw MySQLProtocolException(
'Truncated MySQLPacketOK in COM_QUERY response: '
'expected at least 7 bytes, got ${payloadBytes.length}',
);
}
payload = MySQLPacketOK.decode(payloadBytes);
} else if (type == 0xff) {
payload = MySQLPacketError.decode(payloadBytes);
} else if (type == 0xfb) {
throw MySQLProtocolException(
"COM_QUERY_RESPONSE of type 0xfb is not implemented",
);
} else {
payload = MySQLPacketColumnCount.decode(payloadBytes);
}
return MySQLPacket(
sequenceID: header.$2,
payloadLength: payloadBytes.length,
payload: payload,
);
}