Package org.bouncycastle.tls
Class ByteQueue
java.lang.Object
org.bouncycastle.tls.ByteQueue
A queue for bytes. This file could be more optimized.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidaddData(byte[] buf, int off, int len) Add some data to our buffer.intvoidcopyTo(OutputStream output, int length) Copy some bytes from the beginning of the data to the providedOutputStream.static intnextTwoPow(int i) voidread(byte[] buf, int offset, int len, int skip) Read data from the buffer.voidread(ByteBuffer buf, int len, int skip) Read data from the buffer.intintreadUint16(int skip) shortreadUint8(int skip) voidremoveData(byte[] buf, int off, int len, int skip) Remove data from the buffer.voidremoveData(int i) Remove some bytes from our data from the beginning.byte[]removeData(int len, int skip) voidremoveData(ByteBuffer buf, int len, int skip) Remove data from the buffer.voidshrink()
-
Constructor Details
-
ByteQueue
public ByteQueue() -
ByteQueue
public ByteQueue(int capacity) -
ByteQueue
public ByteQueue(byte[] buf, int off, int len)
-
-
Method Details
-
nextTwoPow
public static int nextTwoPow(int i) - Returns:
- The smallest number which can be written as 2^x which is bigger than i.
-
addData
public void addData(byte[] buf, int off, int len) Add some data to our buffer.- Parameters:
buf- A byte-array to read data from.off- How many bytes to skip at the beginning of the array.len- How many bytes to read from the array.
-
available
public int available()- Returns:
- The number of bytes which are available in this buffer.
-
copyTo
Copy some bytes from the beginning of the data to the providedOutputStream.- Parameters:
output- TheOutputStreamto copy the bytes to.length- How many bytes to copy.- Throws:
IOException
-
read
public void read(byte[] buf, int offset, int len, int skip) Read data from the buffer.- Parameters:
buf- The buffer where the read data will be copied to.offset- How many bytes to skip at the beginning of buf.len- How many bytes to read at all.skip- How many bytes from our data to skip.
-
read
Read data from the buffer.- Parameters:
buf- TheByteBufferwhere the read data will be copied to.len- How many bytes to read at all.skip- How many bytes from our data to skip.
-
readInt32
public int readInt32() -
readUint8
public short readUint8(int skip) -
readUint16
public int readUint16(int skip) -
removeData
public void removeData(int i) Remove some bytes from our data from the beginning.- Parameters:
i- How many bytes to remove.
-
removeData
public void removeData(byte[] buf, int off, int len, int skip) Remove data from the buffer.- Parameters:
buf- The buffer where the removed data will be copied to.off- How many bytes to skip at the beginning of buf.len- How many bytes to read at all.skip- How many bytes from our data to skip.
-
removeData
Remove data from the buffer.- Parameters:
buf- TheByteBufferwhere the removed data will be copied to.len- How many bytes to read at all.skip- How many bytes from our data to skip.
-
removeData
public byte[] removeData(int len, int skip) -
shrink
public void shrink()
-