class WrappedCompositeByteBuf extends CompositeByteBuf
| Modifier and Type | Field and Description |
|---|---|
private CompositeByteBuf |
wrapped |
leakDetector, readerIndex, writerIndex| Constructor and Description |
|---|
WrappedCompositeByteBuf(CompositeByteBuf wrapped) |
| Modifier and Type | Method and Description |
|---|---|
protected byte |
_getByte(int index) |
protected int |
_getInt(int index) |
protected int |
_getIntLE(int index) |
protected long |
_getLong(int index) |
protected long |
_getLongLE(int index) |
protected short |
_getShort(int index) |
protected short |
_getShortLE(int index) |
protected int |
_getUnsignedMedium(int index) |
protected int |
_getUnsignedMediumLE(int index) |
protected void |
_setByte(int index,
int value) |
protected void |
_setInt(int index,
int value) |
protected void |
_setIntLE(int index,
int value) |
protected void |
_setLong(int index,
long value) |
protected void |
_setLongLE(int index,
long value) |
protected void |
_setMedium(int index,
int value) |
protected void |
_setMediumLE(int index,
int value) |
protected void |
_setShort(int index,
int value) |
protected void |
_setShortLE(int index,
int value) |
CompositeByteBuf |
addComponent(boolean increaseWriterIndex,
ByteBuf buffer)
|
CompositeByteBuf |
addComponent(boolean increaseWriterIndex,
int cIndex,
ByteBuf buffer)
Add the given
ByteBuf on the specific index and increase the writerIndex
if increaseWriterIndex is true. |
CompositeByteBuf |
addComponent(ByteBuf buffer)
Add the given
ByteBuf. |
CompositeByteBuf |
addComponent(int cIndex,
ByteBuf buffer)
Add the given
ByteBuf on the specific index. |
CompositeByteBuf |
addComponents(boolean increaseWriterIndex,
ByteBuf... buffers)
|
CompositeByteBuf |
addComponents(boolean increaseWriterIndex,
java.lang.Iterable<ByteBuf> buffers)
|
CompositeByteBuf |
addComponents(ByteBuf... buffers)
Add the given
ByteBufs. |
CompositeByteBuf |
addComponents(int cIndex,
ByteBuf... buffers)
Add the given
ByteBufs on the specific index |
CompositeByteBuf |
addComponents(int cIndex,
java.lang.Iterable<ByteBuf> buffers)
Add the given
ByteBufs on the specific index
Be aware that this method does not increase the writerIndex of the CompositeByteBuf. |
CompositeByteBuf |
addComponents(java.lang.Iterable<ByteBuf> buffers)
Add the given
ByteBufs. |
ByteBufAllocator |
alloc()
Returns the
ByteBufAllocator which created this buffer. |
byte[] |
array()
Returns the backing byte array of this buffer.
|
int |
arrayOffset()
Returns the offset of the first byte within the backing byte array of
this buffer.
|
ByteBuf |
asReadOnly()
Returns a read-only version of this buffer.
|
int |
bytesBefore(byte value)
Locates the first occurrence of the specified
value in this
buffer. |
int |
bytesBefore(int length,
byte value)
Locates the first occurrence of the specified
value in this
buffer. |
int |
bytesBefore(int index,
int length,
byte value)
Locates the first occurrence of the specified
value in this
buffer. |
int |
capacity()
Returns the number of bytes (octets) this buffer can contain.
|
CompositeByteBuf |
capacity(int newCapacity)
Adjusts the capacity of this buffer.
|
CompositeByteBuf |
clear()
Sets the
readerIndex and writerIndex of this buffer to
0. |
int |
compareTo(ByteBuf that)
Compares the content of the specified buffer to the content of this
buffer.
|
ByteBuf |
component(int cIndex)
Return the
ByteBuf on the specified index |
ByteBuf |
componentAtOffset(int offset)
Return the
ByteBuf on the specified index |
CompositeByteBuf |
consolidate()
Consolidate the composed
ByteBufs |
CompositeByteBuf |
consolidate(int cIndex,
int numComponents)
Consolidate the composed
ByteBufs |
ByteBuf |
copy()
Returns a copy of this buffer's readable bytes.
|
ByteBuf |
copy(int index,
int length)
Returns a copy of this buffer's sub-region.
|
void |
deallocate()
Called once
AbstractReferenceCountedByteBuf.refCnt() is equals 0. |
java.util.List<ByteBuf> |
decompose(int offset,
int length)
Same with
AbstractByteBuf.slice(int, int) except that this method returns a list. |
CompositeByteBuf |
discardReadBytes()
Discards the bytes between the 0th index and
readerIndex. |
CompositeByteBuf |
discardReadComponents()
Discard all
ByteBufs which are read. |
CompositeByteBuf |
discardSomeReadBytes()
Similar to
ByteBuf.discardReadBytes() except that this method might discard
some, all, or none of read bytes depending on its internal implementation to reduce
overall memory bandwidth consumption at the cost of potentially additional memory
consumption. |
ByteBuf |
duplicate()
Returns a buffer which shares the whole region of this buffer.
|
CompositeByteBuf |
ensureWritable(int minWritableBytes)
Makes sure the number of the writable bytes
is equal to or greater than the specified value.
|
int |
ensureWritable(int minWritableBytes,
boolean force)
Tries to make sure the number of the writable bytes
is equal to or greater than the specified value.
|
boolean |
equals(java.lang.Object o)
Determines if the content of the specified buffer is identical to the
content of this array.
|
int |
forEachByte(ByteProcessor processor)
Iterates over the readable bytes of this buffer with the specified
processor in ascending order. |
int |
forEachByte(int index,
int length,
ByteProcessor processor)
Iterates over the specified area of this buffer with the specified
processor in ascending order. |
int |
forEachByteDesc(ByteProcessor processor)
Iterates over the readable bytes of this buffer with the specified
processor in descending order. |
int |
forEachByteDesc(int index,
int length,
ByteProcessor processor)
Iterates over the specified area of this buffer with the specified
processor in descending order. |
boolean |
getBoolean(int index)
Gets a boolean at the specified absolute (@code index) in this buffer.
|
byte |
getByte(int index)
Gets a byte at the specified absolute
index in this buffer. |
CompositeByteBuf |
getBytes(int index,
byte[] dst)
Transfers this buffer's data to the specified destination starting at
the specified absolute
index. |
CompositeByteBuf |
getBytes(int index,
byte[] dst,
int dstIndex,
int length)
Transfers this buffer's data to the specified destination starting at
the specified absolute
index. |
CompositeByteBuf |
getBytes(int index,
ByteBuf dst)
Transfers this buffer's data to the specified destination starting at
the specified absolute
index until the destination becomes
non-writable. |
CompositeByteBuf |
getBytes(int index,
java.nio.ByteBuffer dst)
Transfers this buffer's data to the specified destination starting at
the specified absolute
index until the destination's position
reaches its limit. |
CompositeByteBuf |
getBytes(int index,
ByteBuf dst,
int length)
Transfers this buffer's data to the specified destination starting at
the specified absolute
index. |
CompositeByteBuf |
getBytes(int index,
ByteBuf dst,
int dstIndex,
int length)
Transfers this buffer's data to the specified destination starting at
the specified absolute
index. |
int |
getBytes(int index,
java.nio.channels.FileChannel out,
long position,
int length)
Transfers this buffer's data starting at the specified absolute
index
to the specified channel starting at the given file position. |
int |
getBytes(int index,
java.nio.channels.GatheringByteChannel out,
int length)
Transfers this buffer's data to the specified channel starting at the
specified absolute
index. |
CompositeByteBuf |
getBytes(int index,
java.io.OutputStream out,
int length)
Transfers this buffer's data to the specified stream starting at the
specified absolute
index. |
char |
getChar(int index)
Gets a 2-byte UTF-16 character at the specified absolute
index in this buffer. |
java.lang.CharSequence |
getCharSequence(int index,
int length,
java.nio.charset.Charset charset)
Gets a
CharSequence with the given length at the given index. |
double |
getDouble(int index)
Gets a 64-bit floating point number at the specified absolute
index in this buffer. |
float |
getFloat(int index)
Gets a 32-bit floating point number at the specified absolute
index in this buffer. |
int |
getInt(int index)
Gets a 32-bit integer at the specified absolute
index in
this buffer. |
int |
getIntLE(int index)
Gets a 32-bit integer at the specified absolute
index in
this buffer with Little Endian Byte Order. |
long |
getLong(int index)
Gets a 64-bit long integer at the specified absolute
index in
this buffer. |
long |
getLongLE(int index)
Gets a 64-bit long integer at the specified absolute
index in
this buffer in Little Endian Byte Order. |
int |
getMedium(int index)
Gets a 24-bit medium integer at the specified absolute
index in
this buffer. |
int |
getMediumLE(int index)
Gets a 24-bit medium integer at the specified absolute
index in
this buffer in the Little Endian Byte Order. |
short |
getShort(int index)
Gets a 16-bit short integer at the specified absolute
index in
this buffer. |
short |
getShortLE(int index)
Gets a 16-bit short integer at the specified absolute
index in
this buffer in Little Endian Byte Order. |
short |
getUnsignedByte(int index)
Gets an unsigned byte at the specified absolute
index in this
buffer. |
long |
getUnsignedInt(int index)
Gets an unsigned 32-bit integer at the specified absolute
index
in this buffer. |
long |
getUnsignedIntLE(int index)
Gets an unsigned 32-bit integer at the specified absolute
index
in this buffer in Little Endian Byte Order. |
int |
getUnsignedMedium(int index)
Gets an unsigned 24-bit medium integer at the specified absolute
index in this buffer. |
int |
getUnsignedMediumLE(int index)
Gets an unsigned 24-bit medium integer at the specified absolute
index in this buffer in Little Endian Byte Order. |
int |
getUnsignedShort(int index)
Gets an unsigned 16-bit short integer at the specified absolute
index in this buffer. |
int |
getUnsignedShortLE(int index)
Gets an unsigned 16-bit short integer at the specified absolute
index in this buffer in Little Endian Byte Order. |
boolean |
hasArray()
Returns
true if and only if this buffer has a backing byte array. |
int |
hashCode()
Returns a hash code which was calculated from the content of this
buffer.
|
boolean |
hasMemoryAddress()
Returns
true if and only if this buffer has a reference to the low-level memory address that points
to the backing data. |
int |
indexOf(int fromIndex,
int toIndex,
byte value)
Locates the first occurrence of the specified
value in this
buffer. |
ByteBuf |
internalComponent(int cIndex)
Return the internal
ByteBuf on the specified index. |
ByteBuf |
internalComponentAtOffset(int offset)
Return the internal
ByteBuf on the specified offset. |
java.nio.ByteBuffer |
internalNioBuffer(int index,
int length)
Internal use only: Exposes the internal NIO buffer.
|
boolean |
isDirect()
Returns
true if and only if this buffer is backed by an
NIO direct buffer. |
boolean |
isReadable()
Returns
true
if and only if (this.writerIndex - this.readerIndex) is greater
than 0. |
boolean |
isReadable(int numBytes)
Returns
true if and only if this buffer contains equal to or more than the specified number of elements. |
boolean |
isReadOnly()
Returns
true if and only if this buffer is read-only. |
boolean |
isWritable()
Returns
true
if and only if (this.capacity - this.writerIndex) is greater
than 0. |
boolean |
isWritable(int numBytes)
Returns
true if and only if this buffer has enough room to allow writing the specified number of
elements. |
java.util.Iterator<ByteBuf> |
iterator() |
CompositeByteBuf |
markReaderIndex()
Marks the current
readerIndex in this buffer. |
CompositeByteBuf |
markWriterIndex()
Marks the current
writerIndex in this buffer. |
int |
maxCapacity()
Returns the maximum allowed capacity of this buffer.
|
int |
maxNumComponents()
Return the max number of
ByteBuf's that are composed in this instance |
int |
maxWritableBytes()
Returns the maximum possible number of writable bytes, which is equal to
(this.maxCapacity - this.writerIndex). |
long |
memoryAddress()
Returns the low-level memory address that point to the first byte of ths backing data.
|
protected SwappedByteBuf |
newSwappedByteBuf()
Creates a new
SwappedByteBuf for this ByteBuf instance. |
java.nio.ByteBuffer |
nioBuffer()
Exposes this buffer's readable bytes as an NIO
ByteBuffer. |
java.nio.ByteBuffer |
nioBuffer(int index,
int length)
Exposes this buffer's sub-region as an NIO
ByteBuffer. |
int |
nioBufferCount()
Returns the maximum number of NIO
ByteBuffers that consist this buffer. |
java.nio.ByteBuffer[] |
nioBuffers()
Exposes this buffer's readable bytes as an NIO
ByteBuffer's. |
java.nio.ByteBuffer[] |
nioBuffers(int index,
int length)
Exposes this buffer's bytes as an NIO
ByteBuffer's for the specified index and length
The returned buffer shares the content with this buffer, while changing the position and limit
of the returned NIO buffer does not affect the indexes and marks of this buffer. |
int |
numComponents()
Return the current number of
ByteBuf's that are composed in this instance |
java.nio.ByteOrder |
order()
Returns the endianness
of this buffer.
|
ByteBuf |
order(java.nio.ByteOrder endianness)
Returns a buffer with the specified
endianness which shares the whole region,
indexes, and marks of this buffer. |
int |
readableBytes()
Returns the number of readable bytes which is equal to
(this.writerIndex - this.readerIndex). |
boolean |
readBoolean()
Gets a boolean at the current
readerIndex and increases
the readerIndex by 1 in this buffer. |
byte |
readByte()
Gets a byte at the current
readerIndex and increases
the readerIndex by 1 in this buffer. |
CompositeByteBuf |
readBytes(byte[] dst)
Transfers this buffer's data to the specified destination starting at
the current
readerIndex and increases the readerIndex
by the number of the transferred bytes (= dst.length). |
CompositeByteBuf |
readBytes(byte[] dst,
int dstIndex,
int length)
Transfers this buffer's data to the specified destination starting at
the current
readerIndex and increases the readerIndex
by the number of the transferred bytes (= length). |
CompositeByteBuf |
readBytes(ByteBuf dst)
Transfers this buffer's data to the specified destination starting at
the current
readerIndex until the destination becomes
non-writable, and increases the readerIndex by the number of the
transferred bytes. |
CompositeByteBuf |
readBytes(java.nio.ByteBuffer dst)
Transfers this buffer's data to the specified destination starting at
the current
readerIndex until the destination's position
reaches its limit, and increases the readerIndex by the
number of the transferred bytes. |
CompositeByteBuf |
readBytes(ByteBuf dst,
int length)
Transfers this buffer's data to the specified destination starting at
the current
readerIndex and increases the readerIndex
by the number of the transferred bytes (= length). |
CompositeByteBuf |
readBytes(ByteBuf dst,
int dstIndex,
int length)
Transfers this buffer's data to the specified destination starting at
the current
readerIndex and increases the readerIndex
by the number of the transferred bytes (= length). |
int |
readBytes(java.nio.channels.FileChannel out,
long position,
int length)
Transfers this buffer's data starting at the current
readerIndex
to the specified channel starting at the given file position. |
int |
readBytes(java.nio.channels.GatheringByteChannel out,
int length)
Transfers this buffer's data to the specified stream starting at the
current
readerIndex. |
ByteBuf |
readBytes(int length)
Transfers this buffer's data to a newly created buffer starting at
the current
readerIndex and increases the readerIndex
by the number of the transferred bytes (= length). |
CompositeByteBuf |
readBytes(java.io.OutputStream out,
int length)
Transfers this buffer's data to the specified stream starting at the
current
readerIndex. |
char |
readChar()
Gets a 2-byte UTF-16 character at the current
readerIndex
and increases the readerIndex by 2 in this buffer. |
java.lang.CharSequence |
readCharSequence(int length,
java.nio.charset.Charset charset)
Gets a
CharSequence with the given length at the current readerIndex
and increases the readerIndex by the given length. |
double |
readDouble()
Gets a 64-bit floating point number at the current
readerIndex
and increases the readerIndex by 8 in this buffer. |
int |
readerIndex()
Returns the
readerIndex of this buffer. |
CompositeByteBuf |
readerIndex(int readerIndex)
Sets the
readerIndex of this buffer. |
float |
readFloat()
Gets a 32-bit floating point number at the current
readerIndex
and increases the readerIndex by 4 in this buffer. |
int |
readInt()
Gets a 32-bit integer at the current
readerIndex
and increases the readerIndex by 4 in this buffer. |
int |
readIntLE()
Gets a 32-bit integer at the current
readerIndex
in the Little Endian Byte Order and increases the readerIndex
by 4 in this buffer. |
long |
readLong()
Gets a 64-bit integer at the current
readerIndex
and increases the readerIndex by 8 in this buffer. |
long |
readLongLE()
Gets a 64-bit integer at the current
readerIndex
in the Little Endian Byte Order and increases the readerIndex
by 8 in this buffer. |
int |
readMedium()
Gets a 24-bit medium integer at the current
readerIndex
and increases the readerIndex by 3 in this buffer. |
int |
readMediumLE()
Gets a 24-bit medium integer at the current
readerIndex
in the Little Endian Byte Order and increases the
readerIndex by 3 in this buffer. |
ByteBuf |
readRetainedSlice(int length)
Returns a new retained slice of this buffer's sub-region starting at the current
readerIndex and increases the readerIndex by the size
of the new slice (= length). |
short |
readShort()
Gets a 16-bit short integer at the current
readerIndex
and increases the readerIndex by 2 in this buffer. |
short |
readShortLE()
Gets a 16-bit short integer at the current
readerIndex
in the Little Endian Byte Order and increases the readerIndex
by 2 in this buffer. |
ByteBuf |
readSlice(int length)
Returns a new slice of this buffer's sub-region starting at the current
readerIndex and increases the readerIndex by the size
of the new slice (= length). |
short |
readUnsignedByte()
Gets an unsigned byte at the current
readerIndex and increases
the readerIndex by 1 in this buffer. |
long |
readUnsignedInt()
Gets an unsigned 32-bit integer at the current
readerIndex
and increases the readerIndex by 4 in this buffer. |
long |
readUnsignedIntLE()
Gets an unsigned 32-bit integer at the current
readerIndex
in the Little Endian Byte Order and increases the readerIndex
by 4 in this buffer. |
int |
readUnsignedMedium()
Gets an unsigned 24-bit medium integer at the current
readerIndex
and increases the readerIndex by 3 in this buffer. |
int |
readUnsignedMediumLE()
Gets an unsigned 24-bit medium integer at the current
readerIndex
in the Little Endian Byte Order and increases the readerIndex
by 3 in this buffer. |
int |
readUnsignedShort()
Gets an unsigned 16-bit short integer at the current
readerIndex
and increases the readerIndex by 2 in this buffer. |
int |
readUnsignedShortLE()
Gets an unsigned 16-bit short integer at the current
readerIndex
in the Little Endian Byte Order and increases the readerIndex
by 2 in this buffer. |
int |
refCnt()
Returns the reference count of this object.
|
boolean |
release()
Decreases the reference count by
1 and deallocates this object if the reference count reaches at
0. |
boolean |
release(int decrement)
Decreases the reference count by the specified
decrement and deallocates this object if the reference
count reaches at 0. |
CompositeByteBuf |
removeComponent(int cIndex)
Remove the
ByteBuf from the given index. |
CompositeByteBuf |
removeComponents(int cIndex,
int numComponents)
Remove the number of
ByteBufs starting from the given index. |
CompositeByteBuf |
resetReaderIndex()
Repositions the current
readerIndex to the marked
readerIndex in this buffer. |
CompositeByteBuf |
resetWriterIndex()
Repositions the current
writerIndex to the marked
writerIndex in this buffer. |
CompositeByteBuf |
retain()
Increases the reference count by
1. |
CompositeByteBuf |
retain(int increment)
Increases the reference count by the specified
increment. |
ByteBuf |
retainedDuplicate()
Returns a retained buffer which shares the whole region of this buffer.
|
ByteBuf |
retainedSlice()
Returns a retained slice of this buffer's readable bytes.
|
ByteBuf |
retainedSlice(int index,
int length)
Returns a retained slice of this buffer's sub-region.
|
CompositeByteBuf |
setBoolean(int index,
boolean value)
Sets the specified boolean at the specified absolute
index in this
buffer. |
CompositeByteBuf |
setByte(int index,
int value)
Sets the specified byte at the specified absolute
index in this
buffer. |
CompositeByteBuf |
setBytes(int index,
byte[] src)
Transfers the specified source array's data to this buffer starting at
the specified absolute
index. |
CompositeByteBuf |
setBytes(int index,
byte[] src,
int srcIndex,
int length)
Transfers the specified source array's data to this buffer starting at
the specified absolute
index. |
CompositeByteBuf |
setBytes(int index,
ByteBuf src)
Transfers the specified source buffer's data to this buffer starting at
the specified absolute
index until the source buffer becomes
unreadable. |
CompositeByteBuf |
setBytes(int index,
java.nio.ByteBuffer src)
Transfers the specified source buffer's data to this buffer starting at
the specified absolute
index until the source buffer's position
reaches its limit. |
CompositeByteBuf |
setBytes(int index,
ByteBuf src,
int length)
Transfers the specified source buffer's data to this buffer starting at
the specified absolute
index. |
CompositeByteBuf |
setBytes(int index,
ByteBuf src,
int srcIndex,
int length)
Transfers the specified source buffer's data to this buffer starting at
the specified absolute
index. |
int |
setBytes(int index,
java.nio.channels.FileChannel in,
long position,
int length)
Transfers the content of the specified source channel starting at the given file position
to this buffer starting at the specified absolute
index. |
int |
setBytes(int index,
java.io.InputStream in,
int length)
Transfers the content of the specified source stream to this buffer
starting at the specified absolute
index. |
int |
setBytes(int index,
java.nio.channels.ScatteringByteChannel in,
int length)
Transfers the content of the specified source channel to this buffer
starting at the specified absolute
index. |
CompositeByteBuf |
setChar(int index,
int value)
Sets the specified 2-byte UTF-16 character at the specified absolute
index in this buffer. |
int |
setCharSequence(int index,
java.lang.CharSequence sequence,
java.nio.charset.Charset charset)
Writes the specified
CharSequence at the current writerIndex and increases
the writerIndex by the written bytes. |
CompositeByteBuf |
setDouble(int index,
double value)
Sets the specified 64-bit floating-point number at the specified
absolute
index in this buffer. |
CompositeByteBuf |
setFloat(int index,
float value)
Sets the specified 32-bit floating-point number at the specified
absolute
index in this buffer. |
CompositeByteBuf |
setIndex(int readerIndex,
int writerIndex)
Sets the
readerIndex and writerIndex of this buffer
in one shot. |
CompositeByteBuf |
setInt(int index,
int value)
Sets the specified 32-bit integer at the specified absolute
index in this buffer. |
ByteBuf |
setIntLE(int index,
int value)
Sets the specified 32-bit integer at the specified absolute
index in this buffer with Little Endian byte order
. |
CompositeByteBuf |
setLong(int index,
long value)
Sets the specified 64-bit long integer at the specified absolute
index in this buffer. |
ByteBuf |
setLongLE(int index,
long value)
Sets the specified 64-bit long integer at the specified absolute
index in this buffer in Little Endian Byte Order. |
CompositeByteBuf |
setMedium(int index,
int value)
Sets the specified 24-bit medium integer at the specified absolute
index in this buffer. |
ByteBuf |
setMediumLE(int index,
int value)
Sets the specified 24-bit medium integer at the specified absolute
index in this buffer in the Little Endian Byte Order. |
CompositeByteBuf |
setShort(int index,
int value)
Sets the specified 16-bit short integer at the specified absolute
index in this buffer. |
ByteBuf |
setShortLE(int index,
int value)
Sets the specified 16-bit short integer at the specified absolute
index in this buffer with the Little Endian Byte Order. |
CompositeByteBuf |
setZero(int index,
int length)
Fills this buffer with NUL (0x00) starting at the specified
absolute
index. |
CompositeByteBuf |
skipBytes(int length)
Increases the current
readerIndex by the specified
length in this buffer. |
ByteBuf |
slice()
Returns a slice of this buffer's readable bytes.
|
ByteBuf |
slice(int index,
int length)
Returns a slice of this buffer's sub-region.
|
int |
toByteIndex(int cIndex) |
int |
toComponentIndex(int offset)
Return the index for the given offset
|
java.lang.String |
toString()
Returns the string representation of this buffer.
|
java.lang.String |
toString(java.nio.charset.Charset charset)
Decodes this buffer's readable bytes into a string with the specified
character set name.
|
java.lang.String |
toString(int index,
int length,
java.nio.charset.Charset charset)
Decodes this buffer's sub-region into a string with the specified
character set.
|
CompositeByteBuf |
touch()
Records the current access location of this object for debugging purposes.
|
CompositeByteBuf |
touch(java.lang.Object hint)
Records the current access location of this object with an additional arbitrary information for debugging
purposes.
|
ByteBuf |
unwrap()
Return the underlying buffer instance if this buffer is a wrapper of another buffer.
|
int |
writableBytes()
Returns the number of writable bytes which is equal to
(this.capacity - this.writerIndex). |
CompositeByteBuf |
writeBoolean(boolean value)
Sets the specified boolean at the current
writerIndex
and increases the writerIndex by 1 in this buffer. |
CompositeByteBuf |
writeByte(int value)
Sets the specified byte at the current
writerIndex
and increases the writerIndex by 1 in this buffer. |
CompositeByteBuf |
writeBytes(byte[] src)
Transfers the specified source array's data to this buffer starting at
the current
writerIndex and increases the writerIndex
by the number of the transferred bytes (= src.length). |
CompositeByteBuf |
writeBytes(byte[] src,
int srcIndex,
int length)
Transfers the specified source array's data to this buffer starting at
the current
writerIndex and increases the writerIndex
by the number of the transferred bytes (= length). |
CompositeByteBuf |
writeBytes(ByteBuf src)
Transfers the specified source buffer's data to this buffer starting at
the current
writerIndex until the source buffer becomes
unreadable, and increases the writerIndex by the number of
the transferred bytes. |
CompositeByteBuf |
writeBytes(java.nio.ByteBuffer src)
Transfers the specified source buffer's data to this buffer starting at
the current
writerIndex until the source buffer's position
reaches its limit, and increases the writerIndex by the
number of the transferred bytes. |
CompositeByteBuf |
writeBytes(ByteBuf src,
int length)
Transfers the specified source buffer's data to this buffer starting at
the current
writerIndex and increases the writerIndex
by the number of the transferred bytes (= length). |
CompositeByteBuf |
writeBytes(ByteBuf src,
int srcIndex,
int length)
Transfers the specified source buffer's data to this buffer starting at
the current
writerIndex and increases the writerIndex
by the number of the transferred bytes (= length). |
int |
writeBytes(java.nio.channels.FileChannel in,
long position,
int length)
Transfers the content of the specified channel starting at the given file position
to this buffer starting at the current
writerIndex and increases the
writerIndex by the number of the transferred bytes. |
int |
writeBytes(java.io.InputStream in,
int length)
Transfers the content of the specified stream to this buffer
starting at the current
writerIndex and increases the
writerIndex by the number of the transferred bytes. |
int |
writeBytes(java.nio.channels.ScatteringByteChannel in,
int length)
Transfers the content of the specified channel to this buffer
starting at the current
writerIndex and increases the
writerIndex by the number of the transferred bytes. |
CompositeByteBuf |
writeChar(int value)
Sets the specified 2-byte UTF-16 character at the current
writerIndex and increases the writerIndex by 2
in this buffer. |
int |
writeCharSequence(java.lang.CharSequence sequence,
java.nio.charset.Charset charset)
Writes the specified
CharSequence at the current writerIndex and increases
the writerIndex by the written bytes. |
CompositeByteBuf |
writeDouble(double value)
Sets the specified 64-bit floating point number at the current
writerIndex and increases the writerIndex by 8
in this buffer. |
CompositeByteBuf |
writeFloat(float value)
Sets the specified 32-bit floating point number at the current
writerIndex and increases the writerIndex by 4
in this buffer. |
CompositeByteBuf |
writeInt(int value)
Sets the specified 32-bit integer at the current
writerIndex
and increases the writerIndex by 4 in this buffer. |
ByteBuf |
writeIntLE(int value)
Sets the specified 32-bit integer at the current
writerIndex
in the Little Endian Byte Order and increases the writerIndex
by 4 in this buffer. |
CompositeByteBuf |
writeLong(long value)
Sets the specified 64-bit long integer at the current
writerIndex and increases the writerIndex by 8
in this buffer. |
ByteBuf |
writeLongLE(long value)
Sets the specified 64-bit long integer at the current
writerIndex in the Little Endian Byte Order and
increases the writerIndex by 8
in this buffer. |
CompositeByteBuf |
writeMedium(int value)
Sets the specified 24-bit medium integer at the current
writerIndex and increases the writerIndex by 3
in this buffer. |
ByteBuf |
writeMediumLE(int value)
Sets the specified 24-bit medium integer at the current
writerIndex in the Little Endian Byte Order and
increases the writerIndex by 3 in this
buffer. |
int |
writerIndex()
Returns the
writerIndex of this buffer. |
CompositeByteBuf |
writerIndex(int writerIndex)
Sets the
writerIndex of this buffer. |
CompositeByteBuf |
writeShort(int value)
Sets the specified 16-bit short integer at the current
writerIndex and increases the writerIndex by 2
in this buffer. |
ByteBuf |
writeShortLE(int value)
Sets the specified 16-bit short integer in the Little Endian Byte
Order at the current
writerIndex and increases the
writerIndex by 2 in this buffer. |
CompositeByteBuf |
writeZero(int length)
Fills this buffer with NUL (0x00) starting at the current
writerIndex and increases the writerIndex by the
specified length. |
setRefCntadjustMarkers, checkDstIndex, checkIndex, checkIndex, checkIndex0, checkNewCapacity, checkReadableBytes, checkSrcIndex, discardMarks, ensureAccessible, maxCapacity, setIndex0private final CompositeByteBuf wrapped
WrappedCompositeByteBuf(CompositeByteBuf wrapped)
public boolean release()
ReferenceCounted1 and deallocates this object if the reference count reaches at
0.release in interface ReferenceCountedrelease in class AbstractReferenceCountedByteBuftrue if and only if the reference count became 0 and this object has been deallocatedpublic boolean release(int decrement)
ReferenceCounteddecrement and deallocates this object if the reference
count reaches at 0.release in interface ReferenceCountedrelease in class AbstractReferenceCountedByteBuftrue if and only if the reference count became 0 and this object has been deallocatedpublic final int maxCapacity()
ByteBufByteBuf.capacity(int) or
ByteBuf.ensureWritable(int), those methods will raise an
IllegalArgumentException.maxCapacity in class AbstractByteBufpublic final int readerIndex()
ByteBufreaderIndex of this buffer.readerIndex in class AbstractByteBufpublic final int writerIndex()
ByteBufwriterIndex of this buffer.writerIndex in class AbstractByteBufpublic final boolean isReadable()
ByteBuftrue
if and only if (this.writerIndex - this.readerIndex) is greater
than 0.isReadable in class AbstractByteBufpublic final boolean isReadable(int numBytes)
ByteBuftrue if and only if this buffer contains equal to or more than the specified number of elements.isReadable in class AbstractByteBufpublic final boolean isWritable()
ByteBuftrue
if and only if (this.capacity - this.writerIndex) is greater
than 0.isWritable in class AbstractByteBufpublic final boolean isWritable(int numBytes)
ByteBuftrue if and only if this buffer has enough room to allow writing the specified number of
elements.isWritable in class AbstractByteBufpublic final int readableBytes()
ByteBuf(this.writerIndex - this.readerIndex).readableBytes in class AbstractByteBufpublic final int writableBytes()
ByteBuf(this.capacity - this.writerIndex).writableBytes in class AbstractByteBufpublic final int maxWritableBytes()
ByteBuf(this.maxCapacity - this.writerIndex).maxWritableBytes in class AbstractByteBufpublic int ensureWritable(int minWritableBytes,
boolean force)
ByteBufByteBuf.ensureWritable(int),
this method does not raise an exception but returns a code.ensureWritable in class AbstractByteBufminWritableBytes - the expected minimum number of writable bytesforce - When ByteBuf.writerIndex() + minWritableBytes > ByteBuf.maxCapacity():
true - the capacity of the buffer is expanded to ByteBuf.maxCapacity()false - the capacity of the buffer is unchanged0 if the buffer has enough writable bytes, and its capacity is unchanged.
1 if the buffer does not have enough bytes, and its capacity is unchanged.
2 if the buffer has enough writable bytes, and its capacity has been increased.
3 if the buffer does not have enough bytes, but its capacity has been
increased to its maximum.public ByteBuf order(java.nio.ByteOrder endianness)
ByteBufendianness which shares the whole region,
indexes, and marks of this buffer. Modifying the content, the indexes, or the marks of the
returned buffer or this buffer affects each other's content, indexes, and marks. If the
specified endianness is identical to this buffer's byte order, this method can
return this. This method does not modify readerIndex or writerIndex
of this buffer.order in class AbstractByteBufpublic boolean getBoolean(int index)
ByteBufreaderIndex or writerIndex
of this buffer.getBoolean in class AbstractByteBufpublic short getUnsignedByte(int index)
ByteBufindex in this
buffer. This method does not modify readerIndex or
writerIndex of this buffer.getUnsignedByte in class AbstractByteBufpublic short getShort(int index)
ByteBufindex in
this buffer. This method does not modify readerIndex or
writerIndex of this buffer.getShort in class AbstractByteBufpublic short getShortLE(int index)
ByteBufindex in
this buffer in Little Endian Byte Order. This method does not modify
readerIndex or writerIndex of this buffer.getShortLE in class AbstractByteBufpublic int getUnsignedShort(int index)
ByteBufindex in this buffer. This method does not modify
readerIndex or writerIndex of this buffer.getUnsignedShort in class AbstractByteBufpublic int getUnsignedShortLE(int index)
ByteBufindex in this buffer in Little Endian Byte Order.
This method does not modify readerIndex or
writerIndex of this buffer.getUnsignedShortLE in class AbstractByteBufpublic int getUnsignedMedium(int index)
ByteBufindex in this buffer. This method does not modify
readerIndex or writerIndex of this buffer.getUnsignedMedium in class AbstractByteBufpublic int getUnsignedMediumLE(int index)
ByteBufindex in this buffer in Little Endian Byte Order.
This method does not modify readerIndex or
writerIndex of this buffer.getUnsignedMediumLE in class AbstractByteBufpublic int getMedium(int index)
ByteBufindex in
this buffer. This method does not modify readerIndex or
writerIndex of this buffer.getMedium in class AbstractByteBufpublic int getMediumLE(int index)
ByteBufindex in
this buffer in the Little Endian Byte Order. This method does not
modify readerIndex or writerIndex of this buffer.getMediumLE in class AbstractByteBufpublic int getInt(int index)
ByteBufindex in
this buffer. This method does not modify readerIndex or
writerIndex of this buffer.getInt in class AbstractByteBufpublic int getIntLE(int index)
ByteBufindex in
this buffer with Little Endian Byte Order. This method does not
modify readerIndex or writerIndex of this buffer.getIntLE in class AbstractByteBufpublic long getUnsignedInt(int index)
ByteBufindex
in this buffer. This method does not modify readerIndex or
writerIndex of this buffer.getUnsignedInt in class AbstractByteBufpublic long getUnsignedIntLE(int index)
ByteBufindex
in this buffer in Little Endian Byte Order. This method does not
modify readerIndex or writerIndex of this buffer.getUnsignedIntLE in class AbstractByteBufpublic long getLong(int index)
ByteBufindex in
this buffer. This method does not modify readerIndex or
writerIndex of this buffer.getLong in class AbstractByteBufpublic long getLongLE(int index)
ByteBufindex in
this buffer in Little Endian Byte Order. This method does not
modify readerIndex or writerIndex of this buffer.getLongLE in class AbstractByteBufpublic char getChar(int index)
ByteBufindex in this buffer. This method does not modify
readerIndex or writerIndex of this buffer.getChar in class AbstractByteBufpublic float getFloat(int index)
ByteBufindex in this buffer. This method does not modify
readerIndex or writerIndex of this buffer.getFloat in class AbstractByteBufpublic double getDouble(int index)
ByteBufindex in this buffer. This method does not modify
readerIndex or writerIndex of this buffer.getDouble in class AbstractByteBufpublic ByteBuf setShortLE(int index, int value)
ByteBufindex in this buffer with the Little Endian Byte Order.
The 16 high-order bits of the specified value are ignored.
This method does not modify readerIndex or writerIndex of
this buffer.setShortLE in class AbstractByteBufpublic ByteBuf setMediumLE(int index, int value)
ByteBufindex in this buffer in the Little Endian Byte Order.
Please note that the most significant byte is ignored in the
specified value.
This method does not modify readerIndex or writerIndex of
this buffer.setMediumLE in class AbstractByteBufpublic ByteBuf setIntLE(int index, int value)
ByteBufindex in this buffer with Little Endian byte order
.
This method does not modify readerIndex or writerIndex of
this buffer.setIntLE in class AbstractByteBufpublic ByteBuf setLongLE(int index, long value)
ByteBufindex in this buffer in Little Endian Byte Order.
This method does not modify readerIndex or writerIndex of
this buffer.setLongLE in class AbstractByteBufpublic byte readByte()
ByteBufreaderIndex and increases
the readerIndex by 1 in this buffer.readByte in class AbstractByteBufpublic boolean readBoolean()
ByteBufreaderIndex and increases
the readerIndex by 1 in this buffer.readBoolean in class AbstractByteBufpublic short readUnsignedByte()
ByteBufreaderIndex and increases
the readerIndex by 1 in this buffer.readUnsignedByte in class AbstractByteBufpublic short readShort()
ByteBufreaderIndex
and increases the readerIndex by 2 in this buffer.readShort in class AbstractByteBufpublic short readShortLE()
ByteBufreaderIndex
in the Little Endian Byte Order and increases the readerIndex
by 2 in this buffer.readShortLE in class AbstractByteBufpublic int readUnsignedShort()
ByteBufreaderIndex
and increases the readerIndex by 2 in this buffer.readUnsignedShort in class AbstractByteBufpublic int readUnsignedShortLE()
ByteBufreaderIndex
in the Little Endian Byte Order and increases the readerIndex
by 2 in this buffer.readUnsignedShortLE in class AbstractByteBufpublic int readMedium()
ByteBufreaderIndex
and increases the readerIndex by 3 in this buffer.readMedium in class AbstractByteBufpublic int readMediumLE()
ByteBufreaderIndex
in the Little Endian Byte Order and increases the
readerIndex by 3 in this buffer.readMediumLE in class AbstractByteBufpublic int readUnsignedMedium()
ByteBufreaderIndex
and increases the readerIndex by 3 in this buffer.readUnsignedMedium in class AbstractByteBufpublic int readUnsignedMediumLE()
ByteBufreaderIndex
in the Little Endian Byte Order and increases the readerIndex
by 3 in this buffer.readUnsignedMediumLE in class AbstractByteBufpublic int readInt()
ByteBufreaderIndex
and increases the readerIndex by 4 in this buffer.readInt in class AbstractByteBufpublic int readIntLE()
ByteBufreaderIndex
in the Little Endian Byte Order and increases the readerIndex
by 4 in this buffer.readIntLE in class AbstractByteBufpublic long readUnsignedInt()
ByteBufreaderIndex
and increases the readerIndex by 4 in this buffer.readUnsignedInt in class AbstractByteBufpublic long readUnsignedIntLE()
ByteBufreaderIndex
in the Little Endian Byte Order and increases the readerIndex
by 4 in this buffer.readUnsignedIntLE in class AbstractByteBufpublic long readLong()
ByteBufreaderIndex
and increases the readerIndex by 8 in this buffer.readLong in class AbstractByteBufpublic long readLongLE()
ByteBufreaderIndex
in the Little Endian Byte Order and increases the readerIndex
by 8 in this buffer.readLongLE in class AbstractByteBufpublic char readChar()
ByteBufreaderIndex
and increases the readerIndex by 2 in this buffer.readChar in class AbstractByteBufpublic float readFloat()
ByteBufreaderIndex
and increases the readerIndex by 4 in this buffer.readFloat in class AbstractByteBufpublic double readDouble()
ByteBufreaderIndex
and increases the readerIndex by 8 in this buffer.readDouble in class AbstractByteBufpublic ByteBuf readBytes(int length)
ByteBufreaderIndex and increases the readerIndex
by the number of the transferred bytes (= length).
The returned buffer's readerIndex and writerIndex are
0 and length respectively.readBytes in class AbstractByteBuflength - the number of bytes to transferpublic ByteBuf slice()
ByteBufbuf.slice(buf.readerIndex(), buf.readableBytes()).
This method does not modify readerIndex or writerIndex of
this buffer.
Also be aware that this method will NOT call ByteBuf.retain() and so the
reference count will NOT be increased.
slice in class AbstractByteBufpublic ByteBuf retainedSlice()
ByteBufbuf.slice(buf.readerIndex(), buf.readableBytes()).
This method does not modify readerIndex or writerIndex of
this buffer.
Note that this method returns a retained buffer unlike ByteBuf.slice().
This method behaves similarly to slice().retain() except that this method may return
a buffer implementation that produces less garbage.
retainedSlice in class AbstractByteBufpublic ByteBuf slice(int index, int length)
ByteBufreaderIndex or writerIndex of
this buffer.
Also be aware that this method will NOT call ByteBuf.retain() and so the
reference count will NOT be increased.
slice in class AbstractByteBufpublic ByteBuf retainedSlice(int index, int length)
ByteBufreaderIndex or writerIndex of
this buffer.
Note that this method returns a retained buffer unlike ByteBuf.slice(int, int).
This method behaves similarly to slice(...).retain() except that this method may return
a buffer implementation that produces less garbage.
retainedSlice in class AbstractByteBufpublic java.nio.ByteBuffer nioBuffer()
ByteBufByteBuffer. The returned buffer
shares the content with this buffer, while changing the position and limit of the returned
NIO buffer does not affect the indexes and marks of this buffer. This method is identical
to buf.nioBuffer(buf.readerIndex(), buf.readableBytes()). This method does not
modify readerIndex or writerIndex of this buffer. Please note that the
returned NIO buffer will not see the changes of this buffer if this buffer is a dynamic
buffer and it adjusted its capacity.nioBuffer in class AbstractByteBufByteBuf.nioBufferCount(),
ByteBuf.nioBuffers(),
ByteBuf.nioBuffers(int, int)public java.lang.String toString(java.nio.charset.Charset charset)
ByteBufbuf.toString(buf.readerIndex(), buf.readableBytes(), charsetName).
This method does not modify readerIndex or writerIndex of
this buffer.toString in class AbstractByteBufpublic java.lang.String toString(int index,
int length,
java.nio.charset.Charset charset)
ByteBufreaderIndex or
writerIndex of this buffer.toString in class AbstractByteBufpublic int indexOf(int fromIndex,
int toIndex,
byte value)
ByteBufvalue in this
buffer. The search takes place from the specified fromIndex
(inclusive) to the specified toIndex (exclusive).
If fromIndex is greater than toIndex, the search is
performed in a reversed order.
This method does not modify readerIndex or writerIndex of
this buffer.
indexOf in class AbstractByteBuf-1 otherwise.public int bytesBefore(byte value)
ByteBufvalue in this
buffer. The search takes place from the current readerIndex
(inclusive) to the current writerIndex (exclusive).
This method does not modify readerIndex or writerIndex of
this buffer.
bytesBefore in class AbstractByteBufreaderIndex
and the first occurrence if found. -1 otherwise.public int bytesBefore(int length,
byte value)
ByteBufvalue in this
buffer. The search starts from the current readerIndex
(inclusive) and lasts for the specified length.
This method does not modify readerIndex or writerIndex of
this buffer.
bytesBefore in class AbstractByteBufreaderIndex
and the first occurrence if found. -1 otherwise.public int bytesBefore(int index,
int length,
byte value)
ByteBufvalue in this
buffer. The search starts from the specified index (inclusive)
and lasts for the specified length.
This method does not modify readerIndex or writerIndex of
this buffer.
bytesBefore in class AbstractByteBufindex
and the first occurrence if found. -1 otherwise.public int forEachByte(ByteProcessor processor)
ByteBufprocessor in ascending order.forEachByte in class AbstractByteBuf-1 if the processor iterated to or beyond the end of the readable bytes.
The last-visited index If the ByteProcessor.process(byte) returned false.public int forEachByte(int index,
int length,
ByteProcessor processor)
ByteBufprocessor in ascending order.
(i.e. index, (index + 1), .. (index + length - 1))forEachByte in class AbstractByteBuf-1 if the processor iterated to or beyond the end of the specified area.
The last-visited index If the ByteProcessor.process(byte) returned false.public int forEachByteDesc(ByteProcessor processor)
ByteBufprocessor in descending order.forEachByteDesc in class AbstractByteBuf-1 if the processor iterated to or beyond the beginning of the readable bytes.
The last-visited index If the ByteProcessor.process(byte) returned false.public int forEachByteDesc(int index,
int length,
ByteProcessor processor)
ByteBufprocessor in descending order.
(i.e. (index + length - 1), (index + length - 2), ... index)forEachByteDesc in class AbstractByteBuf-1 if the processor iterated to or beyond the beginning of the specified area.
The last-visited index If the ByteProcessor.process(byte) returned false.public final int hashCode()
ByteBufhashCode in class AbstractByteBufpublic final boolean equals(java.lang.Object o)
ByteBufByteBuf.readerIndex() nor
ByteBuf.writerIndex(). This method also returns false for
null and an object which is not an instance of
ByteBuf type.equals in class AbstractByteBufpublic final int compareTo(ByteBuf that)
ByteBufstrcmp,
memcmp and String.compareTo(String).compareTo in interface java.lang.Comparable<ByteBuf>compareTo in class AbstractByteBufpublic final int refCnt()
ReferenceCounted0, it means this object has been deallocated.refCnt in interface ReferenceCountedrefCnt in class AbstractReferenceCountedByteBufpublic ByteBuf duplicate()
ByteBufreaderIndex or writerIndex of
this buffer.
The reader and writer marks will not be duplicated. Also be aware that this method will
NOT call ByteBuf.retain() and so the reference count will NOT be increased.
duplicate in class AbstractByteBufByteBuf.slice().
However this buffer will share the capacity of the underlying buffer, and therefore allows access to all of the
underlying content if necessary.public ByteBuf retainedDuplicate()
ByteBufbuf.slice(0, buf.capacity()).
This method does not modify readerIndex or writerIndex of
this buffer.
Note that this method returns a retained buffer unlike ByteBuf.slice(int, int).
This method behaves similarly to duplicate().retain() except that this method may return
a buffer implementation that produces less garbage.
retainedDuplicate in class AbstractByteBufpublic ByteBuf readSlice(int length)
ByteBufreaderIndex and increases the readerIndex by the size
of the new slice (= length).
Also be aware that this method will NOT call ByteBuf.retain() and so the
reference count will NOT be increased.
readSlice in class AbstractByteBuflength - the size of the new slicepublic ByteBuf readRetainedSlice(int length)
ByteBufreaderIndex and increases the readerIndex by the size
of the new slice (= length).
Note that this method returns a retained buffer unlike ByteBuf.readSlice(int).
This method behaves similarly to readSlice(...).retain() except that this method may return
a buffer implementation that produces less garbage.
readRetainedSlice in class AbstractByteBuflength - the size of the new slicepublic int readBytes(java.nio.channels.GatheringByteChannel out,
int length)
throws java.io.IOException
ByteBufreaderIndex.readBytes in class AbstractByteBuflength - the maximum number of bytes to transferjava.io.IOException - if the specified channel threw an exception during I/Opublic ByteBuf writeShortLE(int value)
ByteBufwriterIndex and increases the
writerIndex by 2 in this buffer.
The 16 high-order bits of the specified value are ignored.writeShortLE in class AbstractByteBufpublic ByteBuf writeMediumLE(int value)
ByteBufwriterIndex in the Little Endian Byte Order and
increases the writerIndex by 3 in this
buffer.writeMediumLE in class AbstractByteBufpublic ByteBuf writeIntLE(int value)
ByteBufwriterIndex
in the Little Endian Byte Order and increases the writerIndex
by 4 in this buffer.writeIntLE in class AbstractByteBufpublic ByteBuf writeLongLE(long value)
ByteBufwriterIndex in the Little Endian Byte Order and
increases the writerIndex by 8
in this buffer.writeLongLE in class AbstractByteBufpublic int writeBytes(java.io.InputStream in,
int length)
throws java.io.IOException
ByteBufwriterIndex and increases the
writerIndex by the number of the transferred bytes.writeBytes in class AbstractByteBuflength - the number of bytes to transferjava.io.IOException - if the specified stream threw an exception during I/Opublic int writeBytes(java.nio.channels.ScatteringByteChannel in,
int length)
throws java.io.IOException
ByteBufwriterIndex and increases the
writerIndex by the number of the transferred bytes.writeBytes in class AbstractByteBuflength - the maximum number of bytes to transferjava.io.IOException - if the specified channel threw an exception during I/Opublic ByteBuf copy()
ByteBufbuf.copy(buf.readerIndex(), buf.readableBytes()).
This method does not modify readerIndex or writerIndex of
this buffer.copy in class AbstractByteBufpublic CompositeByteBuf addComponent(ByteBuf buffer)
CompositeByteBufByteBuf.
Be aware that this method does not increase the writerIndex of the CompositeByteBuf.
If you need to have it increased use CompositeByteBuf.addComponent(boolean, ByteBuf).
ReferenceCounted.release() ownership of buffer is transfered to this CompositeByteBuf.
addComponent in class CompositeByteBufbuffer - the ByteBuf to add. ReferenceCounted.release() ownership is transfered to this
CompositeByteBuf.public CompositeByteBuf addComponents(ByteBuf... buffers)
CompositeByteBufByteBufs.
Be aware that this method does not increase the writerIndex of the CompositeByteBuf.
If you need to have it increased use CompositeByteBuf.addComponents(boolean, ByteBuf[]).
ReferenceCounted.release() ownership of all ByteBuf objects in buffers is transfered to this
CompositeByteBuf.
addComponents in class CompositeByteBufbuffers - the ByteBufs to add. ReferenceCounted.release() ownership of all ReferenceCounted.release()
ownership of all ByteBuf objects is transfered to this CompositeByteBuf.public CompositeByteBuf addComponents(java.lang.Iterable<ByteBuf> buffers)
CompositeByteBufByteBufs.
Be aware that this method does not increase the writerIndex of the CompositeByteBuf.
If you need to have it increased use CompositeByteBuf.addComponents(boolean, Iterable).
ReferenceCounted.release() ownership of all ByteBuf objects in buffers is transfered to this
CompositeByteBuf.
addComponents in class CompositeByteBufbuffers - the ByteBufs to add. ReferenceCounted.release() ownership of all ReferenceCounted.release()
ownership of all ByteBuf objects is transfered to this CompositeByteBuf.public CompositeByteBuf addComponent(int cIndex, ByteBuf buffer)
CompositeByteBufByteBuf on the specific index.
Be aware that this method does not increase the writerIndex of the CompositeByteBuf.
If you need to have it increased use CompositeByteBuf.addComponent(boolean, int, ByteBuf).
ReferenceCounted.release() ownership of buffer is transfered to this CompositeByteBuf.
addComponent in class CompositeByteBufcIndex - the index on which the ByteBuf will be added.buffer - the ByteBuf to add. ReferenceCounted.release() ownership is transfered to this
CompositeByteBuf.public CompositeByteBuf addComponents(int cIndex, ByteBuf... buffers)
CompositeByteBufByteBufs on the specific index
Be aware that this method does not increase the writerIndex of the CompositeByteBuf.
If you need to have it increased you need to handle it by your own.
ReferenceCounted.release() ownership of all ByteBuf objects in buffers is transfered to this
CompositeByteBuf.
addComponents in class CompositeByteBufcIndex - the index on which the ByteBuf will be added. ReferenceCounted.release() ownership of all
ReferenceCounted.release() ownership of all ByteBuf objects is transfered to this
CompositeByteBuf.buffers - the ByteBufs to add. ReferenceCounted.release() ownership of all ReferenceCounted.release()
ownership of all ByteBuf objects is transfered to this CompositeByteBuf.public CompositeByteBuf addComponents(int cIndex, java.lang.Iterable<ByteBuf> buffers)
CompositeByteBufByteBufs on the specific index
Be aware that this method does not increase the writerIndex of the CompositeByteBuf.
If you need to have it increased you need to handle it by your own.
ReferenceCounted.release() ownership of all ByteBuf objects in buffers is transfered to this
CompositeByteBuf.
addComponents in class CompositeByteBufcIndex - the index on which the ByteBuf will be added.buffers - the ByteBufs to add. ReferenceCounted.release() ownership of all
ReferenceCounted.release() ownership of all ByteBuf objects is transfered to this
CompositeByteBuf.public CompositeByteBuf addComponent(boolean increaseWriterIndex, ByteBuf buffer)
CompositeByteBufByteBuf and increase the writerIndex if increaseWriterIndex is
true.
ReferenceCounted.release() ownership of buffer is transfered to this CompositeByteBuf.addComponent in class CompositeByteBufbuffer - the ByteBuf to add. ReferenceCounted.release() ownership is transfered to this
CompositeByteBuf.public CompositeByteBuf addComponents(boolean increaseWriterIndex, ByteBuf... buffers)
CompositeByteBufByteBufs and increase the writerIndex if increaseWriterIndex is
true.
ReferenceCounted.release() ownership of all ByteBuf objects in buffers is transfered to this
CompositeByteBuf.addComponents in class CompositeByteBufbuffers - the ByteBufs to add. ReferenceCounted.release() ownership of all ReferenceCounted.release()
ownership of all ByteBuf objects is transfered to this CompositeByteBuf.public CompositeByteBuf addComponents(boolean increaseWriterIndex, java.lang.Iterable<ByteBuf> buffers)
CompositeByteBufByteBufs and increase the writerIndex if increaseWriterIndex is
true.
ReferenceCounted.release() ownership of all ByteBuf objects in buffers is transfered to this
CompositeByteBuf.addComponents in class CompositeByteBufbuffers - the ByteBufs to add. ReferenceCounted.release() ownership of all ReferenceCounted.release()
ownership of all ByteBuf objects is transfered to this CompositeByteBuf.public CompositeByteBuf addComponent(boolean increaseWriterIndex, int cIndex, ByteBuf buffer)
CompositeByteBufByteBuf on the specific index and increase the writerIndex
if increaseWriterIndex is true.
ReferenceCounted.release() ownership of buffer is transfered to this CompositeByteBuf.addComponent in class CompositeByteBufcIndex - the index on which the ByteBuf will be added.buffer - the ByteBuf to add. ReferenceCounted.release() ownership is transfered to this
CompositeByteBuf.public CompositeByteBuf removeComponent(int cIndex)
CompositeByteBufByteBuf from the given index.removeComponent in class CompositeByteBufcIndex - the index on from which the ByteBuf will be removepublic CompositeByteBuf removeComponents(int cIndex, int numComponents)
CompositeByteBufByteBufs starting from the given index.removeComponents in class CompositeByteBufcIndex - the index on which the ByteBufs will be started to removednumComponents - the number of components to removepublic java.util.Iterator<ByteBuf> iterator()
iterator in interface java.lang.Iterable<ByteBuf>iterator in class CompositeByteBufpublic java.util.List<ByteBuf> decompose(int offset, int length)
CompositeByteBufAbstractByteBuf.slice(int, int) except that this method returns a list.decompose in class CompositeByteBufpublic final boolean isDirect()
ByteBuftrue if and only if this buffer is backed by an
NIO direct buffer.isDirect in class CompositeByteBufpublic final boolean hasArray()
ByteBuftrue if and only if this buffer has a backing byte array.
If this method returns true, you can safely call ByteBuf.array() and
ByteBuf.arrayOffset().hasArray in class CompositeByteBufpublic final byte[] array()
ByteBufarray in class CompositeByteBufpublic final int arrayOffset()
ByteBufarrayOffset in class CompositeByteBufpublic final boolean hasMemoryAddress()
ByteBuftrue if and only if this buffer has a reference to the low-level memory address that points
to the backing data.hasMemoryAddress in class CompositeByteBufpublic final long memoryAddress()
ByteBufmemoryAddress in class CompositeByteBufpublic final int capacity()
ByteBufcapacity in class CompositeByteBufpublic CompositeByteBuf capacity(int newCapacity)
ByteBufnewCapacity is less than the current
capacity, the content of this buffer is truncated. If the newCapacity is greater
than the current capacity, the buffer is appended with unspecified data whose length is
(newCapacity - currentCapacity).capacity in class CompositeByteBufpublic final ByteBufAllocator alloc()
ByteBufByteBufAllocator which created this buffer.alloc in class CompositeByteBufpublic final java.nio.ByteOrder order()
ByteBuforder in class CompositeByteBufpublic final int numComponents()
CompositeByteBufByteBuf's that are composed in this instancenumComponents in class CompositeByteBufpublic final int maxNumComponents()
CompositeByteBufByteBuf's that are composed in this instancemaxNumComponents in class CompositeByteBufpublic final int toComponentIndex(int offset)
CompositeByteBuftoComponentIndex in class CompositeByteBufpublic final int toByteIndex(int cIndex)
toByteIndex in class CompositeByteBufpublic byte getByte(int index)
ByteBufindex in this buffer.
This method does not modify readerIndex or writerIndex of
this buffer.getByte in class CompositeByteBufprotected final byte _getByte(int index)
_getByte in class CompositeByteBufprotected final short _getShort(int index)
_getShort in class CompositeByteBufprotected final short _getShortLE(int index)
_getShortLE in class CompositeByteBufprotected final int _getUnsignedMedium(int index)
_getUnsignedMedium in class CompositeByteBufprotected final int _getUnsignedMediumLE(int index)
_getUnsignedMediumLE in class CompositeByteBufprotected final int _getInt(int index)
_getInt in class CompositeByteBufprotected final int _getIntLE(int index)
_getIntLE in class CompositeByteBufprotected final long _getLong(int index)
_getLong in class CompositeByteBufprotected final long _getLongLE(int index)
_getLongLE in class CompositeByteBufpublic CompositeByteBuf getBytes(int index, byte[] dst, int dstIndex, int length)
ByteBufindex.
This method does not modify readerIndex or writerIndex
of this buffer.getBytes in class CompositeByteBufdstIndex - the first index of the destinationlength - the number of bytes to transferpublic CompositeByteBuf getBytes(int index, java.nio.ByteBuffer dst)
ByteBufindex until the destination's position
reaches its limit.
This method does not modify readerIndex or writerIndex of
this buffer while the destination's position will be increased.getBytes in class CompositeByteBufpublic CompositeByteBuf getBytes(int index, ByteBuf dst, int dstIndex, int length)
ByteBufindex.
This method does not modify readerIndex or writerIndex
of both the source (i.e. this) and the destination.getBytes in class CompositeByteBufdstIndex - the first index of the destinationlength - the number of bytes to transferpublic int getBytes(int index,
java.nio.channels.GatheringByteChannel out,
int length)
throws java.io.IOException
ByteBufindex.
This method does not modify readerIndex or writerIndex of
this buffer.getBytes in class CompositeByteBuflength - the maximum number of bytes to transferjava.io.IOException - if the specified channel threw an exception during I/Opublic CompositeByteBuf getBytes(int index, java.io.OutputStream out, int length) throws java.io.IOException
ByteBufindex.
This method does not modify readerIndex or writerIndex of
this buffer.getBytes in class CompositeByteBuflength - the number of bytes to transferjava.io.IOException - if the specified stream threw an exception during I/Opublic CompositeByteBuf setByte(int index, int value)
ByteBufindex in this
buffer. The 24 high-order bits of the specified value are ignored.
This method does not modify readerIndex or writerIndex of
this buffer.setByte in class CompositeByteBufprotected final void _setByte(int index,
int value)
_setByte in class CompositeByteBufpublic CompositeByteBuf setShort(int index, int value)
ByteBufindex in this buffer. The 16 high-order bits of the specified
value are ignored.
This method does not modify readerIndex or writerIndex of
this buffer.setShort in class CompositeByteBufprotected final void _setShort(int index,
int value)
_setShort in class CompositeByteBufprotected final void _setShortLE(int index,
int value)
_setShortLE in class CompositeByteBufpublic CompositeByteBuf setMedium(int index, int value)
ByteBufindex in this buffer. Please note that the most significant
byte is ignored in the specified value.
This method does not modify readerIndex or writerIndex of
this buffer.setMedium in class CompositeByteBufprotected final void _setMedium(int index,
int value)
_setMedium in class CompositeByteBufprotected final void _setMediumLE(int index,
int value)
_setMediumLE in class CompositeByteBufpublic CompositeByteBuf setInt(int index, int value)
ByteBufindex in this buffer.
This method does not modify readerIndex or writerIndex of
this buffer.setInt in class CompositeByteBufprotected final void _setInt(int index,
int value)
_setInt in class CompositeByteBufprotected final void _setIntLE(int index,
int value)
_setIntLE in class CompositeByteBufpublic CompositeByteBuf setLong(int index, long value)
ByteBufindex in this buffer.
This method does not modify readerIndex or writerIndex of
this buffer.setLong in class CompositeByteBufprotected final void _setLong(int index,
long value)
_setLong in class CompositeByteBufprotected final void _setLongLE(int index,
long value)
_setLongLE in class CompositeByteBufpublic CompositeByteBuf setBytes(int index, byte[] src, int srcIndex, int length)
ByteBufindex.
This method does not modify readerIndex or writerIndex of
this buffer.setBytes in class CompositeByteBufpublic CompositeByteBuf setBytes(int index, java.nio.ByteBuffer src)
ByteBufindex until the source buffer's position
reaches its limit.
This method does not modify readerIndex or writerIndex of
this buffer.setBytes in class CompositeByteBufpublic CompositeByteBuf setBytes(int index, ByteBuf src, int srcIndex, int length)
ByteBufindex.
This method does not modify readerIndex or writerIndex
of both the source (i.e. this) and the destination.setBytes in class CompositeByteBufsrcIndex - the first index of the sourcelength - the number of bytes to transferpublic int setBytes(int index,
java.io.InputStream in,
int length)
throws java.io.IOException
ByteBufindex.
This method does not modify readerIndex or writerIndex of
this buffer.setBytes in class CompositeByteBuflength - the number of bytes to transfer-1 if the specified channel is closed.java.io.IOException - if the specified stream threw an exception during I/Opublic int setBytes(int index,
java.nio.channels.ScatteringByteChannel in,
int length)
throws java.io.IOException
ByteBufindex.
This method does not modify readerIndex or writerIndex of
this buffer.setBytes in class CompositeByteBuflength - the maximum number of bytes to transfer-1 if the specified channel is closed.java.io.IOException - if the specified channel threw an exception during I/Opublic ByteBuf copy(int index, int length)
ByteBufreaderIndex or writerIndex of
this buffer.copy in class CompositeByteBufpublic final ByteBuf component(int cIndex)
CompositeByteBufByteBuf on the specified indexcomponent in class CompositeByteBufcIndex - the index for which the ByteBuf should be returnedByteBuf on the specified indexpublic final ByteBuf componentAtOffset(int offset)
CompositeByteBufByteBuf on the specified indexcomponentAtOffset in class CompositeByteBufoffset - the offset for which the ByteBuf should be returnedByteBuf on the specified indexpublic final ByteBuf internalComponent(int cIndex)
CompositeByteBufByteBuf on the specified index. Note that updating the indexes of the returned
buffer will lead to an undefined behavior of this buffer.internalComponent in class CompositeByteBufcIndex - the index for which the ByteBuf should be returnedpublic final ByteBuf internalComponentAtOffset(int offset)
CompositeByteBufByteBuf on the specified offset. Note that updating the indexes of the returned
buffer will lead to an undefined behavior of this buffer.internalComponentAtOffset in class CompositeByteBufoffset - the offset for which the ByteBuf should be returnedpublic int nioBufferCount()
ByteBufByteBuffers that consist this buffer. Note that ByteBuf.nioBuffers()
or ByteBuf.nioBuffers(int, int) might return a less number of ByteBuffers.nioBufferCount in class CompositeByteBuf-1 if this buffer has no underlying ByteBuffer.
the number of the underlying ByteBuffers if this buffer has at least one underlying
ByteBuffer. Note that this method does not return 0 to avoid confusion.ByteBuf.nioBuffer(),
ByteBuf.nioBuffer(int, int),
ByteBuf.nioBuffers(),
ByteBuf.nioBuffers(int, int)public java.nio.ByteBuffer internalNioBuffer(int index,
int length)
ByteBufinternalNioBuffer in class CompositeByteBufpublic java.nio.ByteBuffer nioBuffer(int index,
int length)
ByteBufByteBuffer. The returned buffer
shares the content with this buffer, while changing the position and limit of the returned
NIO buffer does not affect the indexes and marks of this buffer. This method does not
modify readerIndex or writerIndex of this buffer. Please note that the
returned NIO buffer will not see the changes of this buffer if this buffer is a dynamic
buffer and it adjusted its capacity.nioBuffer in class CompositeByteBufByteBuf.nioBufferCount(),
ByteBuf.nioBuffers(),
ByteBuf.nioBuffers(int, int)public java.nio.ByteBuffer[] nioBuffers(int index,
int length)
ByteBufByteBuffer's for the specified index and length
The returned buffer shares the content with this buffer, while changing the position and limit
of the returned NIO buffer does not affect the indexes and marks of this buffer. This method does
not modify readerIndex or writerIndex of this buffer. Please note that the
returned NIO buffer will not see the changes of this buffer if this buffer is a dynamic
buffer and it adjusted its capacity.nioBuffers in class CompositeByteBufByteBuf.nioBufferCount(),
ByteBuf.nioBuffer(),
ByteBuf.nioBuffer(int, int)public CompositeByteBuf consolidate()
CompositeByteBufByteBufsconsolidate in class CompositeByteBufpublic CompositeByteBuf consolidate(int cIndex, int numComponents)
CompositeByteBufByteBufsconsolidate in class CompositeByteBufcIndex - the index on which to start to composenumComponents - the number of components to composepublic CompositeByteBuf discardReadComponents()
CompositeByteBufByteBufs which are read.discardReadComponents in class CompositeByteBufpublic CompositeByteBuf discardReadBytes()
ByteBufreaderIndex.
It moves the bytes between readerIndex and writerIndex
to the 0th index, and sets readerIndex and writerIndex
to 0 and oldWriterIndex - oldReaderIndex respectively.
Please refer to the class documentation for more detailed explanation.
discardReadBytes in class CompositeByteBufpublic final java.lang.String toString()
ByteBufByteBuf.readerIndex(),
ByteBuf.writerIndex() and ByteBuf.capacity().toString in class CompositeByteBufpublic final CompositeByteBuf readerIndex(int readerIndex)
ByteBufreaderIndex of this buffer.readerIndex in class CompositeByteBufpublic final CompositeByteBuf writerIndex(int writerIndex)
ByteBufwriterIndex of this buffer.writerIndex in class CompositeByteBufpublic final CompositeByteBuf setIndex(int readerIndex, int writerIndex)
ByteBufreaderIndex and writerIndex of this buffer
in one shot. This method is useful when you have to worry about the
invocation order of ByteBuf.readerIndex(int) and ByteBuf.writerIndex(int)
methods. For example, the following code will fail:
// Create a buffer whose readerIndex, writerIndex and capacity are // 0, 0 and 8 respectively.The following code will also fail:ByteBufbuf =Unpooled.buffer(8); // IndexOutOfBoundsException is thrown because the specified // readerIndex (2) cannot be greater than the current writerIndex (0). buf.readerIndex(2); buf.writerIndex(4);
// Create a buffer whose readerIndex, writerIndex and capacity are // 0, 8 and 8 respectively.By contrast, this method guarantees that it never throws anByteBufbuf =Unpooled.wrappedBuffer(new byte[8]); // readerIndex becomes 8. buf.readLong(); // IndexOutOfBoundsException is thrown because the specified // writerIndex (4) cannot be less than the current readerIndex (8). buf.writerIndex(4); buf.readerIndex(2);
IndexOutOfBoundsException as long as the specified
indexes meet basic constraints, regardless what the current index
values of the buffer are:
// No matter what the current state of the buffer is, the following // call always succeeds as long as the capacity of the buffer is not // less than 4. buf.setIndex(2, 4);
setIndex in class CompositeByteBufpublic final CompositeByteBuf clear()
ByteBufreaderIndex and writerIndex of this buffer to
0.
This method is identical to setIndex(0, 0).
Please note that the behavior of this method is different
from that of NIO buffer, which sets the limit to
the capacity of the buffer.
clear in class CompositeByteBufpublic final CompositeByteBuf markReaderIndex()
ByteBufreaderIndex in this buffer. You can
reposition the current readerIndex to the marked
readerIndex by calling ByteBuf.resetReaderIndex().
The initial value of the marked readerIndex is 0.markReaderIndex in class CompositeByteBufpublic final CompositeByteBuf resetReaderIndex()
ByteBufreaderIndex to the marked
readerIndex in this buffer.resetReaderIndex in class CompositeByteBufpublic final CompositeByteBuf markWriterIndex()
ByteBufwriterIndex in this buffer. You can
reposition the current writerIndex to the marked
writerIndex by calling ByteBuf.resetWriterIndex().
The initial value of the marked writerIndex is 0.markWriterIndex in class CompositeByteBufpublic final CompositeByteBuf resetWriterIndex()
ByteBufwriterIndex to the marked
writerIndex in this buffer.resetWriterIndex in class CompositeByteBufpublic CompositeByteBuf ensureWritable(int minWritableBytes)
ByteBufIllegalArgumentException.ensureWritable in class CompositeByteBufminWritableBytes - the expected minimum number of writable bytespublic CompositeByteBuf getBytes(int index, ByteBuf dst)
ByteBufindex until the destination becomes
non-writable. This method is basically same with
ByteBuf.getBytes(int, ByteBuf, int, int), except that this
method increases the writerIndex of the destination by the
number of the transferred bytes while
ByteBuf.getBytes(int, ByteBuf, int, int) does not.
This method does not modify readerIndex or writerIndex of
the source buffer (i.e. this).getBytes in class CompositeByteBufpublic CompositeByteBuf getBytes(int index, ByteBuf dst, int length)
ByteBufindex. This method is basically same
with ByteBuf.getBytes(int, ByteBuf, int, int), except that this
method increases the writerIndex of the destination by the
number of the transferred bytes while
ByteBuf.getBytes(int, ByteBuf, int, int) does not.
This method does not modify readerIndex or writerIndex of
the source buffer (i.e. this).getBytes in class CompositeByteBuflength - the number of bytes to transferpublic CompositeByteBuf getBytes(int index, byte[] dst)
ByteBufindex.
This method does not modify readerIndex or writerIndex of
this buffergetBytes in class CompositeByteBufpublic CompositeByteBuf setBoolean(int index, boolean value)
ByteBufindex in this
buffer.
This method does not modify readerIndex or writerIndex of
this buffer.setBoolean in class CompositeByteBufpublic CompositeByteBuf setChar(int index, int value)
ByteBufindex in this buffer.
The 16 high-order bits of the specified value are ignored.
This method does not modify readerIndex or writerIndex of
this buffer.setChar in class CompositeByteBufpublic CompositeByteBuf setFloat(int index, float value)
ByteBufindex in this buffer.
This method does not modify readerIndex or writerIndex of
this buffer.setFloat in class CompositeByteBufpublic CompositeByteBuf setDouble(int index, double value)
ByteBufindex in this buffer.
This method does not modify readerIndex or writerIndex of
this buffer.setDouble in class CompositeByteBufpublic CompositeByteBuf setBytes(int index, ByteBuf src)
ByteBufindex until the source buffer becomes
unreadable. This method is basically same with
ByteBuf.setBytes(int, ByteBuf, int, int), except that this
method increases the readerIndex of the source buffer by
the number of the transferred bytes while
ByteBuf.setBytes(int, ByteBuf, int, int) does not.
This method does not modify readerIndex or writerIndex of
the source buffer (i.e. this).setBytes in class CompositeByteBufpublic CompositeByteBuf setBytes(int index, ByteBuf src, int length)
ByteBufindex. This method is basically same
with ByteBuf.setBytes(int, ByteBuf, int, int), except that this
method increases the readerIndex of the source buffer by
the number of the transferred bytes while
ByteBuf.setBytes(int, ByteBuf, int, int) does not.
This method does not modify readerIndex or writerIndex of
the source buffer (i.e. this).setBytes in class CompositeByteBuflength - the number of bytes to transferpublic CompositeByteBuf setBytes(int index, byte[] src)
ByteBufindex.
This method does not modify readerIndex or writerIndex of
this buffer.setBytes in class CompositeByteBufpublic CompositeByteBuf setZero(int index, int length)
ByteBufindex.
This method does not modify readerIndex or writerIndex of
this buffer.setZero in class CompositeByteBuflength - the number of NULs to write to the bufferpublic CompositeByteBuf readBytes(ByteBuf dst)
ByteBufreaderIndex until the destination becomes
non-writable, and increases the readerIndex by the number of the
transferred bytes. This method is basically same with
ByteBuf.readBytes(ByteBuf, int, int), except that this method
increases the writerIndex of the destination by the number of
the transferred bytes while ByteBuf.readBytes(ByteBuf, int, int)
does not.readBytes in class CompositeByteBufpublic CompositeByteBuf readBytes(ByteBuf dst, int length)
ByteBufreaderIndex and increases the readerIndex
by the number of the transferred bytes (= length). This method
is basically same with ByteBuf.readBytes(ByteBuf, int, int),
except that this method increases the writerIndex of the
destination by the number of the transferred bytes (= length)
while ByteBuf.readBytes(ByteBuf, int, int) does not.readBytes in class CompositeByteBufpublic CompositeByteBuf readBytes(ByteBuf dst, int dstIndex, int length)
ByteBufreaderIndex and increases the readerIndex
by the number of the transferred bytes (= length).readBytes in class CompositeByteBufdstIndex - the first index of the destinationlength - the number of bytes to transferpublic CompositeByteBuf readBytes(byte[] dst)
ByteBufreaderIndex and increases the readerIndex
by the number of the transferred bytes (= dst.length).readBytes in class CompositeByteBufpublic CompositeByteBuf readBytes(byte[] dst, int dstIndex, int length)
ByteBufreaderIndex and increases the readerIndex
by the number of the transferred bytes (= length).readBytes in class CompositeByteBufdstIndex - the first index of the destinationlength - the number of bytes to transferpublic CompositeByteBuf readBytes(java.nio.ByteBuffer dst)
ByteBufreaderIndex until the destination's position
reaches its limit, and increases the readerIndex by the
number of the transferred bytes.readBytes in class CompositeByteBufpublic CompositeByteBuf readBytes(java.io.OutputStream out, int length) throws java.io.IOException
ByteBufreaderIndex.readBytes in class CompositeByteBuflength - the number of bytes to transferjava.io.IOException - if the specified stream threw an exception during I/Opublic int getBytes(int index,
java.nio.channels.FileChannel out,
long position,
int length)
throws java.io.IOException
ByteBufindex
to the specified channel starting at the given file position.
This method does not modify readerIndex or writerIndex of
this buffer. This method does not modify the channel's position.getBytes in class CompositeByteBufposition - the file position at which the transfer is to beginlength - the maximum number of bytes to transferjava.io.IOException - if the specified channel threw an exception during I/Opublic int setBytes(int index,
java.nio.channels.FileChannel in,
long position,
int length)
throws java.io.IOException
ByteBufindex.
This method does not modify readerIndex or writerIndex of
this buffer. This method does not modify the channel's position.setBytes in class CompositeByteBufposition - the file position at which the transfer is to beginlength - the maximum number of bytes to transfer-1 if the specified channel is closed.java.io.IOException - if the specified channel threw an exception during I/Opublic boolean isReadOnly()
ByteBuftrue if and only if this buffer is read-only.isReadOnly in class AbstractByteBufpublic ByteBuf asReadOnly()
ByteBufasReadOnly in class AbstractByteBufprotected SwappedByteBuf newSwappedByteBuf()
AbstractByteBufSwappedByteBuf for this ByteBuf instance.newSwappedByteBuf in class AbstractByteBufpublic java.lang.CharSequence getCharSequence(int index,
int length,
java.nio.charset.Charset charset)
ByteBufCharSequence with the given length at the given index.getCharSequence in class AbstractByteBuflength - the length to readcharset - that should be usedpublic java.lang.CharSequence readCharSequence(int length,
java.nio.charset.Charset charset)
ByteBufCharSequence with the given length at the current readerIndex
and increases the readerIndex by the given length.readCharSequence in class AbstractByteBuflength - the length to readcharset - that should be usedpublic int setCharSequence(int index,
java.lang.CharSequence sequence,
java.nio.charset.Charset charset)
ByteBufCharSequence at the current writerIndex and increases
the writerIndex by the written bytes.setCharSequence in class AbstractByteBufindex - on which the sequence should be writtensequence - to writecharset - that should be used.public int readBytes(java.nio.channels.FileChannel out,
long position,
int length)
throws java.io.IOException
ByteBufreaderIndex
to the specified channel starting at the given file position.
This method does not modify the channel's position.readBytes in class AbstractByteBufposition - the file position at which the transfer is to beginlength - the maximum number of bytes to transferjava.io.IOException - if the specified channel threw an exception during I/Opublic int writeBytes(java.nio.channels.FileChannel in,
long position,
int length)
throws java.io.IOException
ByteBufwriterIndex and increases the
writerIndex by the number of the transferred bytes.
This method does not modify the channel's position.writeBytes in class AbstractByteBufposition - the file position at which the transfer is to beginlength - the maximum number of bytes to transferjava.io.IOException - if the specified channel threw an exception during I/Opublic int writeCharSequence(java.lang.CharSequence sequence,
java.nio.charset.Charset charset)
ByteBufCharSequence at the current writerIndex and increases
the writerIndex by the written bytes.
in this buffer.writeCharSequence in class AbstractByteBufsequence - to writecharset - that should be usedpublic CompositeByteBuf skipBytes(int length)
ByteBufreaderIndex by the specified
length in this buffer.skipBytes in class CompositeByteBufpublic CompositeByteBuf writeBoolean(boolean value)
ByteBufwriterIndex
and increases the writerIndex by 1 in this buffer.writeBoolean in class CompositeByteBufpublic CompositeByteBuf writeByte(int value)
ByteBufwriterIndex
and increases the writerIndex by 1 in this buffer.
The 24 high-order bits of the specified value are ignored.writeByte in class CompositeByteBufpublic CompositeByteBuf writeShort(int value)
ByteBufwriterIndex and increases the writerIndex by 2
in this buffer. The 16 high-order bits of the specified value are ignored.writeShort in class CompositeByteBufpublic CompositeByteBuf writeMedium(int value)
ByteBufwriterIndex and increases the writerIndex by 3
in this buffer.writeMedium in class CompositeByteBufpublic CompositeByteBuf writeInt(int value)
ByteBufwriterIndex
and increases the writerIndex by 4 in this buffer.writeInt in class CompositeByteBufpublic CompositeByteBuf writeLong(long value)
ByteBufwriterIndex and increases the writerIndex by 8
in this buffer.writeLong in class CompositeByteBufpublic CompositeByteBuf writeChar(int value)
ByteBufwriterIndex and increases the writerIndex by 2
in this buffer. The 16 high-order bits of the specified value are ignored.writeChar in class CompositeByteBufpublic CompositeByteBuf writeFloat(float value)
ByteBufwriterIndex and increases the writerIndex by 4
in this buffer.writeFloat in class CompositeByteBufpublic CompositeByteBuf writeDouble(double value)
ByteBufwriterIndex and increases the writerIndex by 8
in this buffer.writeDouble in class CompositeByteBufpublic CompositeByteBuf writeBytes(ByteBuf src)
ByteBufwriterIndex until the source buffer becomes
unreadable, and increases the writerIndex by the number of
the transferred bytes. This method is basically same with
ByteBuf.writeBytes(ByteBuf, int, int), except that this method
increases the readerIndex of the source buffer by the number of
the transferred bytes while ByteBuf.writeBytes(ByteBuf, int, int)
does not.writeBytes in class CompositeByteBufpublic CompositeByteBuf writeBytes(ByteBuf src, int length)
ByteBufwriterIndex and increases the writerIndex
by the number of the transferred bytes (= length). This method
is basically same with ByteBuf.writeBytes(ByteBuf, int, int),
except that this method increases the readerIndex of the source
buffer by the number of the transferred bytes (= length) while
ByteBuf.writeBytes(ByteBuf, int, int) does not.writeBytes in class CompositeByteBuflength - the number of bytes to transferpublic CompositeByteBuf writeBytes(ByteBuf src, int srcIndex, int length)
ByteBufwriterIndex and increases the writerIndex
by the number of the transferred bytes (= length).writeBytes in class CompositeByteBufsrcIndex - the first index of the sourcelength - the number of bytes to transferpublic CompositeByteBuf writeBytes(byte[] src)
ByteBufwriterIndex and increases the writerIndex
by the number of the transferred bytes (= src.length).writeBytes in class CompositeByteBufpublic CompositeByteBuf writeBytes(byte[] src, int srcIndex, int length)
ByteBufwriterIndex and increases the writerIndex
by the number of the transferred bytes (= length).writeBytes in class CompositeByteBufsrcIndex - the first index of the sourcelength - the number of bytes to transferpublic CompositeByteBuf writeBytes(java.nio.ByteBuffer src)
ByteBufwriterIndex until the source buffer's position
reaches its limit, and increases the writerIndex by the
number of the transferred bytes.writeBytes in class CompositeByteBufpublic CompositeByteBuf writeZero(int length)
ByteBufwriterIndex and increases the writerIndex by the
specified length.writeZero in class CompositeByteBuflength - the number of NULs to write to the bufferpublic CompositeByteBuf retain(int increment)
ReferenceCountedincrement.retain in interface ReferenceCountedretain in class CompositeByteBufpublic CompositeByteBuf retain()
ReferenceCounted1.retain in interface ReferenceCountedretain in class CompositeByteBufpublic CompositeByteBuf touch()
ReferenceCountedResourceLeakDetector. This method is a shortcut to touch(null).touch in interface ReferenceCountedtouch in class CompositeByteBufpublic CompositeByteBuf touch(java.lang.Object hint)
ReferenceCountedResourceLeakDetector.touch in interface ReferenceCountedtouch in class CompositeByteBufpublic java.nio.ByteBuffer[] nioBuffers()
ByteBufByteBuffer's. The returned buffer
shares the content with this buffer, while changing the position and limit of the returned
NIO buffer does not affect the indexes and marks of this buffer. This method does not
modify readerIndex or writerIndex of this buffer. Please note that the
returned NIO buffer will not see the changes of this buffer if this buffer is a dynamic
buffer and it adjusted its capacity.nioBuffers in class CompositeByteBufByteBuf.nioBufferCount(),
ByteBuf.nioBuffer(),
ByteBuf.nioBuffer(int, int)public CompositeByteBuf discardSomeReadBytes()
ByteBufByteBuf.discardReadBytes() except that this method might discard
some, all, or none of read bytes depending on its internal implementation to reduce
overall memory bandwidth consumption at the cost of potentially additional memory
consumption.discardSomeReadBytes in class CompositeByteBufpublic final void deallocate()
AbstractReferenceCountedByteBufAbstractReferenceCountedByteBuf.refCnt() is equals 0.deallocate in class CompositeByteBufpublic final ByteBuf unwrap()
ByteBufunwrap in class CompositeByteBufnull if this buffer is not a wrapper