Class PacketReader

java.lang.Object
org.mariadb.jdbc.client.socket.PacketReader

public class PacketReader extends Object
  • Field Details

    • REUSABLE_BUFFER_LENGTH

      private static final int REUSABLE_BUFFER_LENGTH
      See Also:
    • MAX_PACKET_SIZE

      private static final int MAX_PACKET_SIZE
      See Also:
    • logger

      private static final Logger logger
    • reusableArray

      private final byte[] reusableArray
    • inputStream

      private final InputStream inputStream
    • maxQuerySizeToLog

      private final int maxQuerySizeToLog
    • sequence

      private final MutableInt sequence
    • serverThreadLog

      private String serverThreadLog
  • Constructor Details

    • PacketReader

      public PacketReader(InputStream in, Configuration conf, MutableInt sequence)
      Constructor of standard socket MySQL packet stream reader.
      Parameters:
      in - stream
      conf - connection options
      sequence - current increment sequence
  • Method Details

    • readPacket

      public ReadableByteBuf readPacket(boolean reUsable) throws IOException
      Get next MySQL packet. If packet is more than 16M, read as many packet needed to finish reading MySQL packet. (first that has not length = 16Mb)
      Parameters:
      reUsable - if packet can use existing reusable buf to avoid creating array
      Returns:
      array packet.
      Throws:
      IOException - if socket exception occur.
    • readPacket

      public ReadableByteBuf readPacket(boolean reUsable, boolean traceEnable) throws IOException
      Get next MySQL packet. If packet is more than 16M, read as many packet needed to finish reading MySQL packet. (first that has not length = 16Mb)
      Parameters:
      reUsable - if packet can use existing reusable buf to avoid creating array
      traceEnable - must trace packet.
      Returns:
      array packet.
      Throws:
      IOException - if socket exception occur.
    • getSequence

      public MutableInt getSequence()
    • close

      public void close() throws IOException
      Throws:
      IOException
    • setServerThreadId

      public void setServerThreadId(Long serverThreadId, HostAddress hostAddress)
      Set server thread id.
      Parameters:
      serverThreadId - current server thread id.
      hostAddress - host information