public static final class ReadableBuffer.ByteBufferReader extends java.lang.Object implements ReadableBuffer
ReadableBuffer.ByteBufferReader| Constructor and Description |
|---|
ByteBufferReader(java.nio.ByteBuffer buffer) |
| Modifier and Type | Method and Description |
|---|---|
static ReadableBuffer.ByteBufferReader |
allocate(int size) |
byte[] |
array()
Returns the primitive array that backs this buffer if one exists and the
buffer is not read-only.
|
int |
arrayOffset()
Returns the offset into the backing array of the first element in the buffer.
|
java.nio.ByteBuffer |
byteBuffer() |
int |
capacity()
Returns the capacity of the backing buffer of this ReadableBuffer
|
ReadableBuffer |
clear()
Resets the buffer position to zero and sets the limit to the buffer capacity,
the mark value is discarded if set.
|
ReadableBuffer |
duplicate()
Creates a duplicate
ReadableBuffer to this instance. |
boolean |
equals(java.lang.Object other) |
ReadableBuffer |
flip()
Sets the buffer limit to the current position and the position is set to zero, the
mark value reset to undefined.
|
byte |
get()
Reads the byte at the current position and advances the position by 1.
|
ReadableBuffer |
get(byte[] data)
A bulk read method that copies bytes from this buffer into the target byte array.
|
ReadableBuffer |
get(byte[] data,
int offset,
int length)
A bulk read method that copies bytes from this buffer into the target byte array.
|
byte |
get(int index)
Reads the byte at the given index, the buffer position is not affected.
|
ReadableBuffer |
get(WritableBuffer target)
Copy data from this buffer to the target buffer starting from the current
position and continuing until either this buffer's remaining bytes are
consumed or the target is full.
|
double |
getDouble()
Reads eight bytes from the buffer and returns them as an double value.
|
float |
getFloat()
Reads four bytes from the buffer and returns them as an float value.
|
int |
getInt()
Reads four bytes from the buffer and returns them as an integer value.
|
long |
getLong()
Reads eight bytes from the buffer and returns them as an long value.
|
short |
getShort()
Reads two bytes from the buffer and returns them as an short value.
|
boolean |
hasArray()
Returns true if this ReadableBuffer is backed by an array which can be
accessed by the
ReadableBuffer.array() and ReadableBuffer.arrayOffset() methods. |
int |
hashCode() |
boolean |
hasRemaining() |
int |
limit() |
ReadableBuffer |
limit(int limit)
Sets the current read limit of this buffer to the given value.
|
ReadableBuffer |
mark()
Mark the current position of this buffer which can be returned to after a
read operation by calling
ReadableBuffer.reset(). |
int |
position() |
ReadableBuffer |
position(int position)
Sets the current position of this buffer to the given value.
|
java.lang.String |
readString(java.nio.charset.CharsetDecoder decoder)
Decodes a String from the buffer using the provided
CharsetDecoder
starting the decode at the current position and reading until the limit is
reached. |
java.lang.String |
readUTF8()
Reads a UTF-8 encoded String from the buffer starting the decode at the
current position and reading until the limit is reached.
|
ReadableBuffer |
reclaimRead()
Compact the backing storage of this ReadableBuffer, possibly freeing previously-read
portions of pooled data or reducing the number of backing arrays if present.
|
int |
remaining() |
ReadableBuffer |
reset()
Reset the buffer's position to a previously marked value, the mark should remain
set after calling this method.
|
ReadableBuffer |
rewind()
Resets the buffer position to zero and clears and previously set mark.
|
ReadableBuffer |
slice()
Creates a new ReadableBuffer instance that is a view of the readable portion of
this buffer.
|
java.lang.String |
toString() |
static ReadableBuffer.ByteBufferReader |
wrap(byte[] array) |
static ReadableBuffer.ByteBufferReader |
wrap(java.nio.ByteBuffer buffer) |
public static ReadableBuffer.ByteBufferReader allocate(int size)
public static ReadableBuffer.ByteBufferReader wrap(java.nio.ByteBuffer buffer)
public static ReadableBuffer.ByteBufferReader wrap(byte[] array)
public int capacity()
ReadableBuffercapacity in interface ReadableBufferpublic byte get()
ReadableBufferget in interface ReadableBufferpublic byte get(int index)
ReadableBufferget in interface ReadableBufferindex - The index in the buffer from which to read the byte.public int getInt()
ReadableBuffergetInt in interface ReadableBufferpublic long getLong()
ReadableBuffergetLong in interface ReadableBufferpublic short getShort()
ReadableBuffergetShort in interface ReadableBufferpublic float getFloat()
ReadableBuffergetFloat in interface ReadableBufferpublic double getDouble()
ReadableBuffergetDouble in interface ReadableBufferpublic int limit()
limit in interface ReadableBufferpublic ReadableBuffer get(byte[] data, int offset, int length)
ReadableBufferget in interface ReadableBufferdata - The byte array to copy bytes read from this buffer.offset - The offset into the given array where the copy starts.length - The number of bytes to copy into the target array.public ReadableBuffer get(byte[] data)
ReadableBufferget in interface ReadableBufferdata - The byte array to copy bytes read from this buffer.public ReadableBuffer flip()
ReadableBufferflip in interface ReadableBufferReadableBuffer.public ReadableBuffer position(int position)
ReadableBufferposition in interface ReadableBufferposition - The new position to set for this buffer.ReadableBuffer.public ReadableBuffer slice()
ReadableBufferReadableBuffer.remaining() method, the mark
will be undefined.slice in interface ReadableBufferpublic ReadableBuffer limit(int limit)
ReadableBufferlimit in interface ReadableBufferlimit - The new read limit to set for this buffer.ReadableBuffer.public int remaining()
remaining in interface ReadableBufferpublic int position()
position in interface ReadableBufferpublic boolean hasRemaining()
hasRemaining in interface ReadableBufferpublic ReadableBuffer duplicate()
ReadableBufferReadableBuffer to this instance.
The duplicated buffer will have the same position, limit and mark as this buffer. The two buffers share the same backing data.
duplicate in interface ReadableBufferReadableBuffer.public java.nio.ByteBuffer byteBuffer()
byteBuffer in interface ReadableBufferpublic java.lang.String readUTF8()
ReadableBufferreadUTF8 in interface ReadableBufferpublic java.lang.String readString(java.nio.charset.CharsetDecoder decoder)
throws java.nio.charset.CharacterCodingException
ReadableBufferCharsetDecoder
starting the decode at the current position and reading until the limit is
reached. The position is advanced to the limit once this method returns.
If there is no bytes remaining in the buffer when this method is called a
null is returned.readString in interface ReadableBufferjava.nio.charset.CharacterCodingException - if the encoding is invalid for any reason.public boolean hasArray()
ReadableBufferReadableBuffer.array() and ReadableBuffer.arrayOffset() methods.hasArray in interface ReadableBufferpublic byte[] array()
ReadableBufferReadableBuffer.hasArray()
method before calling this method.array in interface ReadableBufferpublic int arrayOffset()
ReadableBufferReadableBuffer.hasArray() method before calling this method.arrayOffset in interface ReadableBufferpublic ReadableBuffer reclaimRead()
ReadableBufferThis is an optional operation and care should be taken in its implementation.
reclaimRead in interface ReadableBufferpublic ReadableBuffer mark()
ReadableBufferReadableBuffer.reset().mark in interface ReadableBufferReadableBuffer.public ReadableBuffer reset()
ReadableBufferreset in interface ReadableBufferReadableBuffer.public ReadableBuffer rewind()
ReadableBufferrewind in interface ReadableBufferReadableBuffer.public ReadableBuffer clear()
ReadableBufferclear in interface ReadableBufferReadableBuffer.public ReadableBuffer get(WritableBuffer target)
ReadableBufferget in interface ReadableBuffertarget - The WritableBuffer to transfer this buffer's data to.public java.lang.String toString()
toString in class java.lang.Objectpublic int hashCode()
hashCode in class java.lang.Objectpublic boolean equals(java.lang.Object other)
equals in class java.lang.Object