detectPacketType static method
Detecta o tipo genérico do pacote com base no primeiro byte do payload.
Observando o payload:
- 0x00 -> OK (se payloadLength >= 7),
- 0xfe -> EOF (se payloadLength < 9),
- 0xff -> Error,
- Caso contrĂ¡rio -> other.
Implementation
static MySQLGenericPacketType detectPacketType(Uint8List buffer) {
final byteData = ByteData.sublistView(buffer);
final header = decodePacketHeader(buffer);
final payloadLength = header.item1;
final type = byteData.getUint8(4);
if (type == 0x00 && payloadLength >= 7) {
return MySQLGenericPacketType.ok;
} else if (type == 0xfe && payloadLength < 9) {
return MySQLGenericPacketType.eof;
} else if (type == 0xff) {
return MySQLGenericPacketType.error;
} else {
return MySQLGenericPacketType.other;
}
}