Class Buffer
java.lang.Object
org.mariadb.jdbc.internal.com.read.Buffer
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbytegetByteAt(int position) Get next data bytes from length encoded prefix.byte[]Get next data bytes with length encoded prefix.longGet next binary data length.private voidgrow()Grow data array.intRead 24 bit integer.bytereadByte()Reads a byte from the buffer.byte[]Reads a byte array from the buffer, looks for a 0 to end the array.intreadInt()Read a int (4 bytes) from the buffer.longreadLong()Read a long (8 bytes) from the buffer.byte[]readRawBytes(int numberOfBytes) Read raw data.shortRead a short (2 bytes) from the buffer.readString(int numberOfBytes) Read String with defined length.readStringLengthEncoded(Charset charset) Reads length-encoded string.readStringNullEnd(Charset charset) Reads a string from the buffer, looks for a 0 to end the string.intvoidskipByte()voidskipBytes(int bytesToSkip) voidSkip next length encode binary data.voidwriteBytes(byte header, byte[] bytes) Write bytes.voidwriteLength(long length) Write length.voidwriteStringLength(byte[] bytes) Write value with length encoded prefix.voidwriteStringLength(String value) Write value with length encoded prefix.voidwriteStringSmallLength(byte[] value) Write value with length encoded prefix.
-
Field Details
-
buf
public byte[] buf -
position
public int position -
limit
public int limit
-
-
Constructor Details
-
Buffer
public Buffer(byte[] buf, int limit) -
Buffer
public Buffer(byte[] buf) Constructor with default limit and offset.- Parameters:
buf- byte array
-
-
Method Details
-
remaining
public int remaining() -
readStringNullEnd
Reads a string from the buffer, looks for a 0 to end the string.- Parameters:
charset- the charset to use, for example ASCII- Returns:
- the read string
-
readBytesNullEnd
public byte[] readBytesNullEnd()Reads a byte array from the buffer, looks for a 0 to end the array.- Returns:
- the read array
-
readStringLengthEncoded
Reads length-encoded string.- Parameters:
charset- the charset to use, for example ASCII- Returns:
- the read string
-
readString
Read String with defined length.- Parameters:
numberOfBytes- raw data length.- Returns:
- String value
-
readShort
public short readShort()Read a short (2 bytes) from the buffer.- Returns:
- an short
-
read24bitword
public int read24bitword()Read 24 bit integer.- Returns:
- length
-
readInt
public int readInt()Read a int (4 bytes) from the buffer.- Returns:
- a int
-
readLong
public long readLong()Read a long (8 bytes) from the buffer.- Returns:
- a long
-
readByte
public byte readByte()Reads a byte from the buffer.- Returns:
- the byte
-
readRawBytes
public byte[] readRawBytes(int numberOfBytes) Read raw data.- Parameters:
numberOfBytes- raw data length.- Returns:
- raw data
-
skipByte
public void skipByte() -
skipBytes
public void skipBytes(int bytesToSkip) -
skipLengthEncodedBytes
public void skipLengthEncodedBytes()Skip next length encode binary data. -
getLengthEncodedNumeric
public long getLengthEncodedNumeric()Get next binary data length.- Returns:
- length of next binary data
-
getLengthEncodedBuffer
Get next data bytes from length encoded prefix.- Returns:
- buffer
-
getLengthEncodedBytes
public byte[] getLengthEncodedBytes()Get next data bytes with length encoded prefix.- Returns:
- the raw binary data
-
getByteAt
public byte getByteAt(int position) -
writeStringLength
Write value with length encoded prefix.- Parameters:
value- value to write
-
writeStringLength
public void writeStringLength(byte[] bytes) Write value with length encoded prefix.- Parameters:
bytes- value to write
-
writeStringSmallLength
public void writeStringSmallLength(byte[] value) Write value with length encoded prefix. value length MUST be less than 251 char- Parameters:
value- value to write
-
writeBytes
public void writeBytes(byte header, byte[] bytes) Write bytes.- Parameters:
header- header bytebytes- command bytes
-
writeLength
public void writeLength(long length) Write length.- Parameters:
length- length
-
grow
private void grow()Grow data array.
-