MySQLPacket class

Representa um pacote MySQL completo, contendo cabeçalho (4 bytes) e payload.

O cabeçalho do pacote consiste em:

  • 3 bytes para o tamanho do payload.
  • 1 byte para sequenceID. O payload contém o conteúdo real do pacote.

Constructors

MySQLPacket.new({required int sequenceID, required MySQLPacketPayload payload, required int payloadLength})
MySQLPacket.decodeAuthSwitchRequestPacket(Uint8List buffer)
Decodifica um pacote Auth Switch Request MySQLPacketAuthSwitchRequest.
factory
MySQLPacket.decodeBinaryResultSetRowPacket(Uint8List buffer, List<MySQLColumnDefinitionPacket> colDefs)
Decodifica uma linha de ResultSet em formato binário MySQLBinaryResultSetRowPacket.
factory
MySQLPacket.decodeColumnCountPacket(Uint8List buffer)
Decodifica um pacote que contém a contagem de colunas MySQLPacketColumnCount.
factory
MySQLPacket.decodeColumnDefPacket(Uint8List buffer)
Decodifica um pacote de definição de coluna MySQLColumnDefinitionPacket.
factory
MySQLPacket.decodeCommPrepareStmtResponsePacket(Uint8List buffer)
Decodifica a resposta ao COM_STMT_PREPARE MySQLPacketStmtPrepareOK ou error.
factory
MySQLPacket.decodeGenericPacket(Uint8List buffer)
Decodifica um pacote genérico, podendo ser OK, EOF, ERROR, etc.
factory
MySQLPacket.decodeInitialHandshake(Uint8List buffer)
Decodifica um pacote de handshake inicial MySQLPacketInitialHandshake.
factory
MySQLPacket.decodeResultSetRowPacket(Uint8List buffer, List<MySQLColumnDefinitionPacket> colDefs)
Decodifica uma linha de ResultSet em formato textual MySQLResultSetRowPacket.
factory

Properties

hashCode int
The hash code for this object.
no setterinherited
payload MySQLPacketPayload
Conteúdo do pacote.
getter/setter pair
payloadLength int
Tamanho do payload (excluindo os 4 bytes do cabeçalho).
getter/setter pair
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
sequenceID int
Sequence ID do pacote, usado para garantir a ordem dos pacotes.
getter/setter pair

Methods

encode() Uint8List
Codifica o pacote (cabeçalho + payload) em um Uint8List para envio ao servidor.
isEOFPacket() bool
Retorna verdadeiro se o payload for um pacote EOF.
isErrorPacket() bool
Retorna verdadeiro se o payload for um pacote de erro.
isOkPacket() bool
Retorna verdadeiro se o payload for um pacote OK.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited

Static Methods

decodePacketHeader(Uint8List buffer) → Tuple2<int, int>
Decodifica o cabeçalho do pacote, retornando (payloadLength, sequenceID).
detectPacketType(Uint8List buffer) MySQLGenericPacketType
Detecta o tipo genérico do pacote com base no primeiro byte do payload.
getPacketLength(Uint8List buffer) int
Retorna o tamanho total do pacote (cabeçalho de 4 bytes + payload).