Package org.bouncycastle.tls
Class ByteQueue
- java.lang.Object
-
- org.bouncycastle.tls.ByteQueue
-
public class ByteQueue extends java.lang.ObjectA queue for bytes. This file could be more optimized.
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddData(byte[] buf, int off, int len)Add some data to our buffer.intavailable()voidcopyTo(java.io.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.intreadInt32()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)voidshrink()
-
-
-
Method Detail
-
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
public void copyTo(java.io.OutputStream output, int length) throws java.io.IOExceptionCopy 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:
java.io.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.
-
readInt32
public int readInt32()
-
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
public byte[] removeData(int len, int skip)
-
shrink
public void shrink()
-
-