org.mariadb.jdbc.internal.com.read
Class Buffer

java.lang.Object
  extended by org.mariadb.jdbc.internal.com.read.Buffer

public class Buffer
extends Object


Field Summary
 byte[] buf
           
 int limit
           
 int position
           
static Charset UTF_8
           
 
Constructor Summary
Buffer(byte[] buf)
          Constructor with default limit and offset.
Buffer(byte[] buf, int limit)
           
 
Method Summary
 byte getByteAt(int position)
           
 Buffer getLengthEncodedBuffer()
          Get next data bytes from length encoded prefix.
 byte[] getLengthEncodedBytes()
          Get next data bytes with length encoded prefix.
 long getLengthEncodedNumeric()
          Get next binary data length.
 int read24bitword()
          Read 24 bit integer.
 byte readByte()
          Reads a byte from the buffer.
 byte[] readBytesNullEnd()
          Reads a byte array from the buffer, looks for a 0 to end the array.
 int readInt()
          Read a int (4 bytes) from the buffer.
 long readLong()
          Read a long (8 bytes) from the buffer.
 byte[] readRawBytes(int numberOfBytes)
          Read raw data.
 short readShort()
          Read a short (2 bytes) from the buffer.
 String readStringLengthEncoded(Charset charset)
          Reads length-encoded string.
 String readStringNullEnd(Charset charset)
          Reads a string from the buffer, looks for a 0 to end the string.
 int remaining()
           
 void skipByte()
           
 void skipBytes(int bytesToSkip)
           
 void skipLengthEncodedBytes()
          Skip next length encode binary data.
 void writeBytes(byte header, byte[] bytes)
          Write bytes.
 void writeLength(long length)
          Write length.
 void writeStringLength(String value)
          Write value with length encoded prefix.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

UTF_8

public static final Charset UTF_8

buf

public byte[] buf

position

public int position

limit

public int limit
Constructor Detail

Buffer

public Buffer(byte[] buf,
              int limit)

Buffer

public Buffer(byte[] buf)
Constructor with default limit and offset.

Parameters:
buf - byte array
Method Detail

remaining

public int remaining()

readStringNullEnd

public String readStringNullEnd(Charset charset)
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

public String readStringLengthEncoded(Charset charset)
Reads length-encoded string.

Parameters:
charset - the charset to use, for example ASCII
Returns:
the read string

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

public Buffer 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

public void writeStringLength(String value)
Write value with length encoded prefix.

Parameters:
value - value to write

writeBytes

public void writeBytes(byte header,
                       byte[] bytes)
Write bytes.

Parameters:
header - header byte
bytes - command bytes

writeLength

public void writeLength(long length)
Write length.

Parameters:
length - length


Copyright © 2017. All rights reserved.