public interface ReadBuffer extends ByteSequence, Cloneable
| Modifier and Type | Interface and Description |
|---|---|
static interface |
ReadBuffer.BufferInput
The BufferInput interface represents a DataInputStream on top of a
ReadBuffer.
|
| Modifier and Type | Method and Description |
|---|---|
byte |
byteAt(int of)
Returns the byte at the specified offset.
|
Object |
clone()
Create a clone of this ReadBuffer object.
|
void |
copyBytes(int ofBegin,
int ofEnd,
byte[] abDest,
int ofDest)
Copies bytes from this ReadBuffer into the destination byte array.
|
boolean |
equals(Object o)
Compare two ReadBuffer objects for equality.
|
ReadBuffer.BufferInput |
getBufferInput()
Get a BufferInput object to read data from this buffer.
|
ReadBuffer |
getReadBuffer(int of,
int cb)
Obtain a ReadBuffer for a portion of this ReadBuffer.
|
int |
length()
Determine the length of the buffer.
|
ByteSequence |
subSequence(int ofStart,
int ofEnd)
Returns a new
ByteSequence that is a subsequence of this
sequence. |
Binary |
toBinary()
Return a new Binary object that holds the complete contents of this
ReadBuffer.
|
Binary |
toBinary(int of,
int cb)
Return a Binary object that holds the specified portion of this
ReadBuffer.
|
byte[] |
toByteArray()
Get the contents of the ReadBuffer as a byte array.
|
byte[] |
toByteArray(int of,
int cb)
Get a portion of the contents of the ReadBuffer as a byte array.
|
ByteBuffer |
toByteBuffer()
Return a read-only ByteBuffer view of this ReadBuffer.
|
ByteBuffer |
toByteBuffer(int of,
int cb)
Return a read-only ByteBuffer view of the specified portion of this
ReadBuffer.
|
void |
writeTo(ByteBuffer buf)
Write the contents of the Binary object to a ByteBuffer.
|
void |
writeTo(ByteBuffer buf,
int of,
int cb)
Write the contents of the Binary object to a ByteBuffer.
|
void |
writeTo(DataOutput out)
Write the contents of this ReadBuffer to a DataOutput.
|
void |
writeTo(DataOutput out,
int of,
int cb)
Write the contents of this ReadBuffer to a DataOutput.
|
void |
writeTo(OutputStream out)
Write the contents of this ReadBuffer to an OutputStream.
|
void |
writeTo(OutputStream out,
int of,
int cb)
Write the contents of the ReadBuffer to an OutputStream.
|
int length()
length in interface ByteSequencebyte byteAt(int of)
0 to length() - 1. The first byte
of the sequence is at offset 0, the next at offset
1, and so on, as for array indexing.byteAt in interface ByteSequenceof - the offset (index) of the byteIndexOutOfBoundsException - if the of
argument is negative or not less than the length of this
ReadBuffervoid copyBytes(int ofBegin,
int ofEnd,
byte[] abDest,
int ofDest)
The first byte to be copied is at offset ofBegin;
the last byte to be copied is at offset ofEnd-1
(thus the total number of bytes to be copied is ofEnd -
ofBegin). The bytes are copied into the sub-array of
abDest starting at offset ofDest
and ending at index:
ofDest + (ofEnd - ofBegin) - 1
This method is the ReadBuffer equivalent of
String.getChars(int, int, char[], int). It allows the caller
to extract a chunk of bytes into the caller's own array.
ofBegin - offset of the first byte in the ReadBuffer to copyofEnd - offset after the last byte in the ReadBuffer to copyabDest - the destination byte arrayofDest - the offset in the destination byte array to copy the
first byte toIndexOutOfBoundsException - Thrown if any of the following
is true:
ofBegin is negative;
ofBegin is greater than ofEnd
ofEnd is greater than the length of this
ReadBuffer;
ofDest is negative
ofDest + (ofEnd - ofBegin) is larger than
abDest.length
NullPointerException - if abDest is
nullReadBuffer.BufferInput getBufferInput()
ReadBuffer getReadBuffer(int of, int cb)
of - the beginning index, inclusivecb - the number of bytes to include in the resulting ReadBufferIndexOutOfBoundsException - if of or
cb is negative, or of + cb is
larger than the length of this ReadBuffer
objectvoid writeTo(OutputStream out) throws IOException
out - an OutputStream to write toIOException - if an I/O exception occursvoid writeTo(OutputStream out, int of, int cb) throws IOException
out - an OutputStream to write toof - the beginning index, inclusivecb - the number of bytes to write to an OutputStreamIOException - if an I/O exception occursvoid writeTo(DataOutput out) throws IOException
out - a DataOutput to write toIOException - if an I/O exception occursvoid writeTo(DataOutput out, int of, int cb) throws IOException
out - a DataOutput to write toof - the beginning index, inclusivecb - the number of bytes to write to a DataOutputIOException - if an I/O exception occursvoid writeTo(ByteBuffer buf)
buf - a ByteBuffer to write tovoid writeTo(ByteBuffer buf, int of, int cb) throws IOException
buf - an ByteBuffer to write toof - the beginning index, inclusivecb - the number of bytes to write to a ByteBufferIOException - if an I/O exception occursbyte[] toByteArray()
This is the equivalent of toByteArray(0, length()).
byte[] toByteArray(int of,
int cb)
This method is an equivalent of
getReadBuffer(of, cb).toByteArray().
of - the beginning index, inclusivecb - the number of bytes to include in the resulting byte[]IndexOutOfBoundsException - if of or
cb is negative, or of + cb is
larger than the length of this ReadBuffer
objectBinary toBinary()
This is the equivalent of toBinary(0, length()).
toBinary in interface ByteSequenceBinary toBinary(int of, int cb)
This method is an equivalent of
getReadBuffer(of, cb).toBinary().
of - the beginning index, inclusivecb - the number of bytes to include in the Binary objectIndexOutOfBoundsException - if of or
cb is negative, or of + cb is
larger than the length of this ReadBuffer
objectByteBuffer toByteBuffer()
ByteBuffer toByteBuffer(int of, int cb)
This method is an equivalent of
getReadBuffer(of, cb).toByteBuffer().
of - the beginning index, inclusivecb - the number of bytes to include in the ByteBuffer objectIndexOutOfBoundsException - if of or
cb is negative, or of + cb is
larger than the length of this ReadBuffer objectByteSequence subSequence(int ofStart, int ofEnd)
ByteSequence that is a subsequence of this
sequence. The subsequence starts with the byte value at the
specified index and ends with the byte value at index
ofEnd - 1. The length (in bytes) of the returned
sequence is ofEnd - ofStart, so if ofStart == ofEnd
then an empty sequence is returned.subSequence in interface ByteSequenceofStart - the start index, inclusiveofEnd - the end index, exclusiveboolean equals(Object o)
Object clone()