diff --git a/pymysql/connections.py b/pymysql/connections.py index 3aa3a14..177fc03 100644 --- a/pymysql/connections.py +++ b/pymysql/connections.py @@ -232,37 +232,15 @@ def unpack_int64(n): class MysqlPacket(object): - """Representation of a MySQL response packet. Reads in the packet - from the network socket, removes packet header and provides an interface - for reading/parsing the packet results.""" - __slots__ = ('_position', '_data', '_packet_number') + """Representation of a MySQL response packet. - def __init__(self, connection): + Provides an interface for reading/parsing the packet results. + """ + __slots__ = ('_position', '_data') + + def __init__(self, data, encoding): self._position = 0 - self._recv_packet(connection) - - def _recv_packet(self, connection): - """Parse the packet header and read entire packet payload into buffer.""" - buff = b'' - while True: - packet_header = connection._read_bytes(4) - if DEBUG: dump_packet(packet_header) - packet_length_bin = packet_header[:3] - - #TODO: check sequence id - self._packet_number = byte2int(packet_header[3]) - - bin_length = packet_length_bin + b'\0' # pad little-endian number - bytes_to_read = struct.unpack('