public class DecompressPacketInputStream extends java.lang.Object implements PacketInputStream
Modifier and Type | Field and Description |
---|---|
private byte[] |
cacheData |
private int |
cacheEnd |
private int |
cachePos |
private int |
compressPacketSeq |
private byte[] |
header |
private java.io.InputStream |
inputStream |
private static Logger |
logger |
private static int |
MAX_PACKET_SIZE |
private int |
maxQuerySizeToLog |
private int |
packetSeq |
private static int |
REUSABLE_BUFFER_LENGTH |
private byte[] |
reusableArray |
private java.lang.String |
serverThreadLog |
private LruTraceCache |
traceCache |
Constructor and Description |
---|
DecompressPacketInputStream(java.io.InputStream in,
int maxQuerySizeToLog) |
Modifier and Type | Method and Description |
---|---|
private void |
cache(byte[] rawBytes,
int length) |
void |
close() |
int |
getCompressLastPacketSeq() |
int |
getLastPacketSeq() |
private byte[] |
getNextCachePacket() |
Buffer |
getPacket(boolean reUsable) |
byte[] |
getPacketArray(boolean reUsable)
Get next packet.
|
private void |
readBlocking(byte[] arr,
int length) |
private void |
readCompressBlocking(byte[] arr,
int compressedLength,
int decompressedLength) |
void |
setServerThreadId(long serverThreadId,
java.lang.Boolean isMaster)
Set server thread id.
|
void |
setTraceCache(LruTraceCache traceCache) |
private static final int REUSABLE_BUFFER_LENGTH
private static final int MAX_PACKET_SIZE
private static final Logger logger
private final byte[] header
private final byte[] reusableArray
private final java.io.InputStream inputStream
private final int maxQuerySizeToLog
private byte[] cacheData
private int cachePos
private int cacheEnd
private int packetSeq
private int compressPacketSeq
private java.lang.String serverThreadLog
private LruTraceCache traceCache
public DecompressPacketInputStream(java.io.InputStream in, int maxQuerySizeToLog)
public Buffer getPacket(boolean reUsable) throws java.io.IOException
getPacket
in interface PacketInputStream
java.io.IOException
public byte[] getPacketArray(boolean reUsable) throws java.io.IOException
getPacketArray
in interface PacketInputStream
reUsable
- if can use existing reusable buffer to avoid creating arrayjava.io.IOException
- if socket exception occur.private void readCompressBlocking(byte[] arr, int compressedLength, int decompressedLength) throws java.io.IOException
java.io.IOException
private void readBlocking(byte[] arr, int length) throws java.io.IOException
java.io.IOException
private void cache(byte[] rawBytes, int length)
private byte[] getNextCachePacket()
public int getLastPacketSeq()
getLastPacketSeq
in interface PacketInputStream
public int getCompressLastPacketSeq()
getCompressLastPacketSeq
in interface PacketInputStream
public void close() throws java.io.IOException
close
in interface PacketInputStream
java.io.IOException
public void setServerThreadId(long serverThreadId, java.lang.Boolean isMaster)
setServerThreadId
in interface PacketInputStream
serverThreadId
- current server thread id.isMaster
- is server masterpublic void setTraceCache(LruTraceCache traceCache)
setTraceCache
in interface PacketInputStream