Class AdvancedLeakAwareByteBuf
- java.lang.Object
-
- io.netty.buffer.ByteBuf
-
- io.netty.buffer.WrappedByteBuf
-
- io.netty.buffer.SimpleLeakAwareByteBuf
-
- io.netty.buffer.AdvancedLeakAwareByteBuf
-
- All Implemented Interfaces:
ByteBufConvertible
,ReferenceCounted
,java.lang.Comparable<ByteBuf>
final class AdvancedLeakAwareByteBuf extends SimpleLeakAwareByteBuf
-
-
Field Summary
Fields Modifier and Type Field Description private static boolean
ACQUIRE_AND_RELEASE_ONLY
private static InternalLogger
logger
private static java.lang.String
PROP_ACQUIRE_AND_RELEASE_ONLY
-
Fields inherited from class io.netty.buffer.SimpleLeakAwareByteBuf
leak
-
Fields inherited from class io.netty.buffer.WrappedByteBuf
buf
-
-
Constructor Summary
Constructors Constructor Description AdvancedLeakAwareByteBuf(ByteBuf wrapped, ByteBuf trackedByteBuf, ResourceLeakTracker<ByteBuf> leak)
AdvancedLeakAwareByteBuf(ByteBuf buf, ResourceLeakTracker<ByteBuf> leak)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description ByteBuf
asReadOnly()
Returns a read-only version of this buffer.int
bytesBefore(byte value)
Locates the first occurrence of the specifiedvalue
in this buffer.int
bytesBefore(int length, byte value)
Locates the first occurrence of the specifiedvalue
in this buffer.int
bytesBefore(int index, int length, byte value)
Locates the first occurrence of the specifiedvalue
in this buffer.ByteBuf
capacity(int newCapacity)
Adjusts the capacity of this buffer.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.ByteBuf
discardReadBytes()
Discards the bytes between the 0th index andreaderIndex
.ByteBuf
discardSomeReadBytes()
Similar toByteBuf.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.ByteBuf
ensureWritable(int minWritableBytes)
Expands the bufferByteBuf.capacity()
to make sure the number of writable bytes is equal to or greater than the specified value.int
ensureWritable(int minWritableBytes, boolean force)
Expands the bufferByteBuf.capacity()
to make sure the number of writable bytes is equal to or greater than the specified value.int
forEachByte(int index, int length, ByteProcessor processor)
Iterates over the specified area of this buffer with the specifiedprocessor
in ascending order.int
forEachByte(ByteProcessor processor)
Iterates over the readable bytes of this buffer with the specifiedprocessor
in ascending order.int
forEachByteDesc(int index, int length, ByteProcessor processor)
Iterates over the specified area of this buffer with the specifiedprocessor
in descending order.int
forEachByteDesc(ByteProcessor processor)
Iterates over the readable bytes of this buffer with the specifiedprocessor
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 absoluteindex
in this buffer.ByteBuf
getBytes(int index, byte[] dst)
Transfers this buffer's data to the specified destination starting at the specified absoluteindex
.ByteBuf
getBytes(int index, byte[] dst, int dstIndex, int length)
Transfers this buffer's data to the specified destination starting at the specified absoluteindex
.ByteBuf
getBytes(int index, ByteBuf dst)
Transfers this buffer's data to the specified destination starting at the specified absoluteindex
until the destination becomes non-writable.ByteBuf
getBytes(int index, ByteBuf dst, int length)
Transfers this buffer's data to the specified destination starting at the specified absoluteindex
.ByteBuf
getBytes(int index, ByteBuf dst, int dstIndex, int length)
Transfers this buffer's data to the specified destination starting at the specified absoluteindex
.ByteBuf
getBytes(int index, java.io.OutputStream out, int length)
Transfers this buffer's data to the specified stream starting at the specified absoluteindex
.ByteBuf
getBytes(int index, java.nio.ByteBuffer dst)
Transfers this buffer's data to the specified destination starting at the specified absoluteindex
until the destination's position reaches its limit.int
getBytes(int index, java.nio.channels.FileChannel out, long position, int length)
Transfers this buffer's data starting at the specified absoluteindex
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 absoluteindex
.char
getChar(int index)
Gets a 2-byte UTF-16 character at the specified absoluteindex
in this buffer.java.lang.CharSequence
getCharSequence(int index, int length, java.nio.charset.Charset charset)
Gets aCharSequence
with the given length at the given index.double
getDouble(int index)
Gets a 64-bit floating point number at the specified absoluteindex
in this buffer.float
getFloat(int index)
Gets a 32-bit floating point number at the specified absoluteindex
in this buffer.int
getInt(int index)
Gets a 32-bit integer at the specified absoluteindex
in this buffer.int
getIntLE(int index)
Gets a 32-bit integer at the specified absoluteindex
in this buffer with Little Endian Byte Order.long
getLong(int index)
Gets a 64-bit long integer at the specified absoluteindex
in this buffer.long
getLongLE(int index)
Gets a 64-bit long integer at the specified absoluteindex
in this buffer in Little Endian Byte Order.int
getMedium(int index)
Gets a 24-bit medium integer at the specified absoluteindex
in this buffer.int
getMediumLE(int index)
Gets a 24-bit medium integer at the specified absoluteindex
in this buffer in the Little Endian Byte Order.short
getShort(int index)
Gets a 16-bit short integer at the specified absoluteindex
in this buffer.short
getShortLE(int index)
Gets a 16-bit short integer at the specified absoluteindex
in this buffer in Little Endian Byte Order.short
getUnsignedByte(int index)
Gets an unsigned byte at the specified absoluteindex
in this buffer.long
getUnsignedInt(int index)
Gets an unsigned 32-bit integer at the specified absoluteindex
in this buffer.long
getUnsignedIntLE(int index)
Gets an unsigned 32-bit integer at the specified absoluteindex
in this buffer in Little Endian Byte Order.int
getUnsignedMedium(int index)
Gets an unsigned 24-bit medium integer at the specified absoluteindex
in this buffer.int
getUnsignedMediumLE(int index)
Gets an unsigned 24-bit medium integer at the specified absoluteindex
in this buffer in Little Endian Byte Order.int
getUnsignedShort(int index)
Gets an unsigned 16-bit short integer at the specified absoluteindex
in this buffer.int
getUnsignedShortLE(int index)
Gets an unsigned 16-bit short integer at the specified absoluteindex
in this buffer in Little Endian Byte Order.int
indexOf(int fromIndex, int toIndex, byte value)
Locates the first occurrence of the specifiedvalue
in this buffer.java.nio.ByteBuffer
internalNioBuffer(int index, int length)
Internal use only: Exposes the internal NIO buffer.protected AdvancedLeakAwareByteBuf
newLeakAwareByteBuf(ByteBuf buf, ByteBuf trackedByteBuf, ResourceLeakTracker<ByteBuf> leakTracker)
java.nio.ByteBuffer
nioBuffer()
Exposes this buffer's readable bytes as an NIOByteBuffer
.java.nio.ByteBuffer
nioBuffer(int index, int length)
Exposes this buffer's sub-region as an NIOByteBuffer
.int
nioBufferCount()
Returns the maximum number of NIOByteBuffer
s that consist this buffer.java.nio.ByteBuffer[]
nioBuffers()
Exposes this buffer's readable bytes as an NIOByteBuffer
's.java.nio.ByteBuffer[]
nioBuffers(int index, int length)
Exposes this buffer's bytes as an NIOByteBuffer
's for the specified index and length The returned buffer either share or contains the copied content of this buffer, while changing the position and limit of the returned NIO buffer does not affect the indexes and marks of this buffer.ByteBuf
order(java.nio.ByteOrder endianness)
Returns a buffer with the specifiedendianness
which shares the whole region, indexes, and marks of this buffer.boolean
readBoolean()
Gets a boolean at the currentreaderIndex
and increases thereaderIndex
by1
in this buffer.byte
readByte()
Gets a byte at the currentreaderIndex
and increases thereaderIndex
by1
in this buffer.ByteBuf
readBytes(byte[] dst)
Transfers this buffer's data to the specified destination starting at the currentreaderIndex
and increases thereaderIndex
by the number of the transferred bytes (=dst.length
).ByteBuf
readBytes(byte[] dst, int dstIndex, int length)
Transfers this buffer's data to the specified destination starting at the currentreaderIndex
and increases thereaderIndex
by the number of the transferred bytes (=length
).ByteBuf
readBytes(int length)
Transfers this buffer's data to a newly created buffer starting at the currentreaderIndex
and increases thereaderIndex
by the number of the transferred bytes (=length
).ByteBuf
readBytes(ByteBuf dst)
Transfers this buffer's data to the specified destination starting at the currentreaderIndex
until the destination becomes non-writable, and increases thereaderIndex
by the number of the transferred bytes.ByteBuf
readBytes(ByteBuf dst, int length)
Transfers this buffer's data to the specified destination starting at the currentreaderIndex
and increases thereaderIndex
by the number of the transferred bytes (=length
).ByteBuf
readBytes(ByteBuf dst, int dstIndex, int length)
Transfers this buffer's data to the specified destination starting at the currentreaderIndex
and increases thereaderIndex
by the number of the transferred bytes (=length
).ByteBuf
readBytes(java.io.OutputStream out, int length)
Transfers this buffer's data to the specified stream starting at the currentreaderIndex
.ByteBuf
readBytes(java.nio.ByteBuffer dst)
Transfers this buffer's data to the specified destination starting at the currentreaderIndex
until the destination's position reaches its limit, and increases thereaderIndex
by the number of the transferred bytes.int
readBytes(java.nio.channels.FileChannel out, long position, int length)
Transfers this buffer's data starting at the currentreaderIndex
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 currentreaderIndex
.char
readChar()
Gets a 2-byte UTF-16 character at the currentreaderIndex
and increases thereaderIndex
by2
in this buffer.java.lang.CharSequence
readCharSequence(int length, java.nio.charset.Charset charset)
Gets aCharSequence
with the given length at the currentreaderIndex
and increases thereaderIndex
by the given length.double
readDouble()
Gets a 64-bit floating point number at the currentreaderIndex
and increases thereaderIndex
by8
in this buffer.float
readFloat()
Gets a 32-bit floating point number at the currentreaderIndex
and increases thereaderIndex
by4
in this buffer.int
readInt()
Gets a 32-bit integer at the currentreaderIndex
and increases thereaderIndex
by4
in this buffer.int
readIntLE()
Gets a 32-bit integer at the currentreaderIndex
in the Little Endian Byte Order and increases thereaderIndex
by4
in this buffer.long
readLong()
Gets a 64-bit integer at the currentreaderIndex
and increases thereaderIndex
by8
in this buffer.long
readLongLE()
Gets a 64-bit integer at the currentreaderIndex
in the Little Endian Byte Order and increases thereaderIndex
by8
in this buffer.int
readMedium()
Gets a 24-bit medium integer at the currentreaderIndex
and increases thereaderIndex
by3
in this buffer.int
readMediumLE()
Gets a 24-bit medium integer at the currentreaderIndex
in the Little Endian Byte Order and increases thereaderIndex
by3
in this buffer.ByteBuf
readRetainedSlice(int length)
Returns a new retained slice of this buffer's sub-region starting at the currentreaderIndex
and increases thereaderIndex
by the size of the new slice (=length
).short
readShort()
Gets a 16-bit short integer at the currentreaderIndex
and increases thereaderIndex
by2
in this buffer.short
readShortLE()
Gets a 16-bit short integer at the currentreaderIndex
in the Little Endian Byte Order and increases thereaderIndex
by2
in this buffer.ByteBuf
readSlice(int length)
Returns a new slice of this buffer's sub-region starting at the currentreaderIndex
and increases thereaderIndex
by the size of the new slice (=length
).short
readUnsignedByte()
Gets an unsigned byte at the currentreaderIndex
and increases thereaderIndex
by1
in this buffer.long
readUnsignedInt()
Gets an unsigned 32-bit integer at the currentreaderIndex
and increases thereaderIndex
by4
in this buffer.long
readUnsignedIntLE()
Gets an unsigned 32-bit integer at the currentreaderIndex
in the Little Endian Byte Order and increases thereaderIndex
by4
in this buffer.int
readUnsignedMedium()
Gets an unsigned 24-bit medium integer at the currentreaderIndex
and increases thereaderIndex
by3
in this buffer.int
readUnsignedMediumLE()
Gets an unsigned 24-bit medium integer at the currentreaderIndex
in the Little Endian Byte Order and increases thereaderIndex
by3
in this buffer.int
readUnsignedShort()
Gets an unsigned 16-bit short integer at the currentreaderIndex
and increases thereaderIndex
by2
in this buffer.int
readUnsignedShortLE()
Gets an unsigned 16-bit short integer at the currentreaderIndex
in the Little Endian Byte Order and increases thereaderIndex
by2
in this buffer.(package private) static void
recordLeakNonRefCountingOperation(ResourceLeakTracker<ByteBuf> leak)
boolean
release()
Decreases the reference count by1
and deallocates this object if the reference count reaches at0
.boolean
release(int decrement)
Decreases the reference count by the specifieddecrement
and deallocates this object if the reference count reaches at0
.ByteBuf
retain()
Increases the reference count by1
.ByteBuf
retain(int increment)
Increases the reference count by the specifiedincrement
.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.ByteBuf
setBoolean(int index, boolean value)
Sets the specified boolean at the specified absoluteindex
in this buffer.ByteBuf
setByte(int index, int value)
Sets the specified byte at the specified absoluteindex
in this buffer.ByteBuf
setBytes(int index, byte[] src)
Transfers the specified source array's data to this buffer starting at the specified absoluteindex
.ByteBuf
setBytes(int index, byte[] src, int srcIndex, int length)
Transfers the specified source array's data to this buffer starting at the specified absoluteindex
.ByteBuf
setBytes(int index, ByteBuf src)
Transfers the specified source buffer's data to this buffer starting at the specified absoluteindex
until the source buffer becomes unreadable.ByteBuf
setBytes(int index, ByteBuf src, int length)
Transfers the specified source buffer's data to this buffer starting at the specified absoluteindex
.ByteBuf
setBytes(int index, ByteBuf src, int srcIndex, int length)
Transfers the specified source buffer's data to this buffer starting at the specified absoluteindex
.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 absoluteindex
.ByteBuf
setBytes(int index, java.nio.ByteBuffer src)
Transfers the specified source buffer's data to this buffer starting at the specified absoluteindex
until the source buffer's position reaches its limit.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 absoluteindex
.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 absoluteindex
.ByteBuf
setChar(int index, int value)
Sets the specified 2-byte UTF-16 character at the specified absoluteindex
in this buffer.int
setCharSequence(int index, java.lang.CharSequence sequence, java.nio.charset.Charset charset)
Writes the specifiedCharSequence
at the givenindex
.ByteBuf
setDouble(int index, double value)
Sets the specified 64-bit floating-point number at the specified absoluteindex
in this buffer.ByteBuf
setFloat(int index, float value)
Sets the specified 32-bit floating-point number at the specified absoluteindex
in this buffer.ByteBuf
setInt(int index, int value)
Sets the specified 32-bit integer at the specified absoluteindex
in this buffer.ByteBuf
setIntLE(int index, int value)
Sets the specified 32-bit integer at the specified absoluteindex
in this buffer with Little Endian byte order .ByteBuf
setLong(int index, long value)
Sets the specified 64-bit long integer at the specified absoluteindex
in this buffer.ByteBuf
setLongLE(int index, long value)
Sets the specified 64-bit long integer at the specified absoluteindex
in this buffer in Little Endian Byte Order.ByteBuf
setMedium(int index, int value)
Sets the specified 24-bit medium integer at the specified absoluteindex
in this buffer.ByteBuf
setMediumLE(int index, int value)
Sets the specified 24-bit medium integer at the specified absoluteindex
in this buffer in the Little Endian Byte Order.ByteBuf
setShort(int index, int value)
Sets the specified 16-bit short integer at the specified absoluteindex
in this buffer.ByteBuf
setShortLE(int index, int value)
Sets the specified 16-bit short integer at the specified absoluteindex
in this buffer with the Little Endian Byte Order.ByteBuf
setZero(int index, int length)
Fills this buffer with NUL (0x00) starting at the specified absoluteindex
.ByteBuf
skipBytes(int length)
Increases the currentreaderIndex
by the specifiedlength
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.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.java.lang.String
toString(java.nio.charset.Charset charset)
Decodes this buffer's readable bytes into a string with the specified character set name.ByteBuf
touch()
Records the current access location of this object for debugging purposes.ByteBuf
touch(java.lang.Object hint)
Records the current access location of this object with an additional arbitrary information for debugging purposes.ByteBuf
writeBoolean(boolean value)
Sets the specified boolean at the currentwriterIndex
and increases thewriterIndex
by1
in this buffer.ByteBuf
writeByte(int value)
Sets the specified byte at the currentwriterIndex
and increases thewriterIndex
by1
in this buffer.ByteBuf
writeBytes(byte[] src)
Transfers the specified source array's data to this buffer starting at the currentwriterIndex
and increases thewriterIndex
by the number of the transferred bytes (=src.length
).ByteBuf
writeBytes(byte[] src, int srcIndex, int length)
Transfers the specified source array's data to this buffer starting at the currentwriterIndex
and increases thewriterIndex
by the number of the transferred bytes (=length
).ByteBuf
writeBytes(ByteBuf src)
Transfers the specified source buffer's data to this buffer starting at the currentwriterIndex
until the source buffer becomes unreadable, and increases thewriterIndex
by the number of the transferred bytes.ByteBuf
writeBytes(ByteBuf src, int length)
Transfers the specified source buffer's data to this buffer starting at the currentwriterIndex
and increases thewriterIndex
by the number of the transferred bytes (=length
).ByteBuf
writeBytes(ByteBuf src, int srcIndex, int length)
Transfers the specified source buffer's data to this buffer starting at the currentwriterIndex
and increases thewriterIndex
by the number of the transferred bytes (=length
).int
writeBytes(java.io.InputStream in, int length)
Transfers the content of the specified stream to this buffer starting at the currentwriterIndex
and increases thewriterIndex
by the number of the transferred bytes.ByteBuf
writeBytes(java.nio.ByteBuffer src)
Transfers the specified source buffer's data to this buffer starting at the currentwriterIndex
until the source buffer's position reaches its limit, and increases thewriterIndex
by the number of the transferred bytes.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 currentwriterIndex
and increases thewriterIndex
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 currentwriterIndex
and increases thewriterIndex
by the number of the transferred bytes.ByteBuf
writeChar(int value)
Sets the specified 2-byte UTF-16 character at the currentwriterIndex
and increases thewriterIndex
by2
in this buffer.int
writeCharSequence(java.lang.CharSequence sequence, java.nio.charset.Charset charset)
Writes the specifiedCharSequence
at the currentwriterIndex
and increases thewriterIndex
by the written bytes.ByteBuf
writeDouble(double value)
Sets the specified 64-bit floating point number at the currentwriterIndex
and increases thewriterIndex
by8
in this buffer.ByteBuf
writeFloat(float value)
Sets the specified 32-bit floating point number at the currentwriterIndex
and increases thewriterIndex
by4
in this buffer.ByteBuf
writeInt(int value)
Sets the specified 32-bit integer at the currentwriterIndex
and increases thewriterIndex
by4
in this buffer.ByteBuf
writeIntLE(int value)
Sets the specified 32-bit integer at the currentwriterIndex
in the Little Endian Byte Order and increases thewriterIndex
by4
in this buffer.ByteBuf
writeLong(long value)
Sets the specified 64-bit long integer at the currentwriterIndex
and increases thewriterIndex
by8
in this buffer.ByteBuf
writeLongLE(long value)
Sets the specified 64-bit long integer at the currentwriterIndex
in the Little Endian Byte Order and increases thewriterIndex
by8
in this buffer.ByteBuf
writeMedium(int value)
Sets the specified 24-bit medium integer at the currentwriterIndex
and increases thewriterIndex
by3
in this buffer.ByteBuf
writeMediumLE(int value)
Sets the specified 24-bit medium integer at the currentwriterIndex
in the Little Endian Byte Order and increases thewriterIndex
by3
in this buffer.ByteBuf
writeShort(int value)
Sets the specified 16-bit short integer at the currentwriterIndex
and increases thewriterIndex
by2
in this buffer.ByteBuf
writeShortLE(int value)
Sets the specified 16-bit short integer in the Little Endian Byte Order at the currentwriterIndex
and increases thewriterIndex
by2
in this buffer.ByteBuf
writeZero(int length)
Fills this buffer with NUL (0x00) starting at the currentwriterIndex
and increases thewriterIndex
by the specifiedlength
.-
Methods inherited from class io.netty.buffer.WrappedByteBuf
alloc, array, arrayOffset, capacity, clear, compareTo, equals, hasArray, hashCode, hasMemoryAddress, isAccessible, isContiguous, isDirect, isReadable, isReadable, isReadOnly, isWritable, isWritable, markReaderIndex, markWriterIndex, maxCapacity, maxFastWritableBytes, maxWritableBytes, memoryAddress, order, readableBytes, readerIndex, readerIndex, refCnt, resetReaderIndex, resetWriterIndex, setIndex, toString, unwrap, writableBytes, writerIndex, writerIndex
-
Methods inherited from class io.netty.buffer.ByteBuf
asByteBuf, getDoubleLE, getFloatLE, readDoubleLE, readFloatLE, setDoubleLE, setFloatLE, writeDoubleLE, writeFloatLE
-
-
-
-
Field Detail
-
PROP_ACQUIRE_AND_RELEASE_ONLY
private static final java.lang.String PROP_ACQUIRE_AND_RELEASE_ONLY
- See Also:
- Constant Field Values
-
ACQUIRE_AND_RELEASE_ONLY
private static final boolean ACQUIRE_AND_RELEASE_ONLY
-
logger
private static final InternalLogger logger
-
-
Constructor Detail
-
AdvancedLeakAwareByteBuf
AdvancedLeakAwareByteBuf(ByteBuf buf, ResourceLeakTracker<ByteBuf> leak)
-
AdvancedLeakAwareByteBuf
AdvancedLeakAwareByteBuf(ByteBuf wrapped, ByteBuf trackedByteBuf, ResourceLeakTracker<ByteBuf> leak)
-
-
Method Detail
-
recordLeakNonRefCountingOperation
static void recordLeakNonRefCountingOperation(ResourceLeakTracker<ByteBuf> leak)
-
order
public ByteBuf order(java.nio.ByteOrder endianness)
Description copied from class:ByteBuf
Returns a buffer with the specifiedendianness
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 specifiedendianness
is identical to this buffer's byte order, this method can returnthis
. This method does not modifyreaderIndex
orwriterIndex
of this buffer.- Overrides:
order
in classSimpleLeakAwareByteBuf
-
slice
public ByteBuf slice()
Description copied from class:ByteBuf
Returns a slice of this buffer's readable bytes. Modifying the content of the returned buffer or this buffer affects each other's content while they maintain separate indexes and marks. This method is identical tobuf.slice(buf.readerIndex(), buf.readableBytes())
. This method does not modifyreaderIndex
orwriterIndex
of this buffer.Also be aware that this method will NOT call
ByteBuf.retain()
and so the reference count will NOT be increased.- Overrides:
slice
in classSimpleLeakAwareByteBuf
-
slice
public ByteBuf slice(int index, int length)
Description copied from class:ByteBuf
Returns a slice of this buffer's sub-region. Modifying the content of the returned buffer or this buffer affects each other's content while they maintain separate indexes and marks. This method does not modifyreaderIndex
orwriterIndex
of this buffer.Also be aware that this method will NOT call
ByteBuf.retain()
and so the reference count will NOT be increased.- Overrides:
slice
in classSimpleLeakAwareByteBuf
-
retainedSlice
public ByteBuf retainedSlice()
Description copied from class:ByteBuf
Returns a retained slice of this buffer's readable bytes. Modifying the content of the returned buffer or this buffer affects each other's content while they maintain separate indexes and marks. This method is identical tobuf.slice(buf.readerIndex(), buf.readableBytes())
. This method does not modifyreaderIndex
orwriterIndex
of this buffer.Note that this method returns a retained buffer unlike
ByteBuf.slice()
. This method behaves similarly toslice().retain()
except that this method may return a buffer implementation that produces less garbage.- Overrides:
retainedSlice
in classSimpleLeakAwareByteBuf
-
retainedSlice
public ByteBuf retainedSlice(int index, int length)
Description copied from class:ByteBuf
Returns a retained slice of this buffer's sub-region. Modifying the content of the returned buffer or this buffer affects each other's content while they maintain separate indexes and marks. This method does not modifyreaderIndex
orwriterIndex
of this buffer.Note that this method returns a retained buffer unlike
ByteBuf.slice(int, int)
. This method behaves similarly toslice(...).retain()
except that this method may return a buffer implementation that produces less garbage.- Overrides:
retainedSlice
in classSimpleLeakAwareByteBuf
-
retainedDuplicate
public ByteBuf retainedDuplicate()
Description copied from class:ByteBuf
Returns a retained buffer which shares the whole region of this buffer. Modifying the content of the returned buffer or this buffer affects each other's content while they maintain separate indexes and marks. This method is identical tobuf.slice(0, buf.capacity())
. This method does not modifyreaderIndex
orwriterIndex
of this buffer.Note that this method returns a retained buffer unlike
ByteBuf.slice(int, int)
. This method behaves similarly toduplicate().retain()
except that this method may return a buffer implementation that produces less garbage.- Overrides:
retainedDuplicate
in classSimpleLeakAwareByteBuf
-
readRetainedSlice
public ByteBuf readRetainedSlice(int length)
Description copied from class:ByteBuf
Returns a new retained slice of this buffer's sub-region starting at the currentreaderIndex
and increases thereaderIndex
by the size of the new slice (=length
).Note that this method returns a retained buffer unlike
ByteBuf.readSlice(int)
. This method behaves similarly toreadSlice(...).retain()
except that this method may return a buffer implementation that produces less garbage.- Overrides:
readRetainedSlice
in classSimpleLeakAwareByteBuf
- Parameters:
length
- the size of the new slice- Returns:
- the newly created slice
-
duplicate
public ByteBuf duplicate()
Description copied from class:ByteBuf
Returns a buffer which shares the whole region of this buffer. Modifying the content of the returned buffer or this buffer affects each other's content while they maintain separate indexes and marks. This method does not modifyreaderIndex
orwriterIndex
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.- Overrides:
duplicate
in classSimpleLeakAwareByteBuf
- Returns:
- A buffer whose readable content is equivalent to the buffer returned by
ByteBuf.slice()
. However this buffer will share the capacity of the underlying buffer, and therefore allows access to all of the underlying content if necessary.
-
readSlice
public ByteBuf readSlice(int length)
Description copied from class:ByteBuf
Returns a new slice of this buffer's sub-region starting at the currentreaderIndex
and increases thereaderIndex
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.- Overrides:
readSlice
in classSimpleLeakAwareByteBuf
- Parameters:
length
- the size of the new slice- Returns:
- the newly created slice
-
discardReadBytes
public ByteBuf discardReadBytes()
Description copied from class:ByteBuf
Discards the bytes between the 0th index andreaderIndex
. It moves the bytes betweenreaderIndex
andwriterIndex
to the 0th index, and setsreaderIndex
andwriterIndex
to0
andoldWriterIndex - oldReaderIndex
respectively.Please refer to the class documentation for more detailed explanation.
- Overrides:
discardReadBytes
in classWrappedByteBuf
-
discardSomeReadBytes
public ByteBuf discardSomeReadBytes()
Description copied from class:ByteBuf
Similar toByteBuf.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.- Overrides:
discardSomeReadBytes
in classWrappedByteBuf
-
ensureWritable
public ByteBuf ensureWritable(int minWritableBytes)
Description copied from class:ByteBuf
Expands the bufferByteBuf.capacity()
to make sure the number of writable bytes is equal to or greater than the specified value. If there are enough writable bytes in this buffer, this method returns with no side effect.- Overrides:
ensureWritable
in classWrappedByteBuf
- Parameters:
minWritableBytes
- the expected minimum number of writable bytes- See Also:
ByteBuf.capacity(int)
-
ensureWritable
public int ensureWritable(int minWritableBytes, boolean force)
Description copied from class:ByteBuf
Expands the bufferByteBuf.capacity()
to make sure the number of writable bytes is equal to or greater than the specified value. UnlikeByteBuf.ensureWritable(int)
, this method returns a status code.- Overrides:
ensureWritable
in classWrappedByteBuf
- Parameters:
minWritableBytes
- the expected minimum number of writable bytesforce
- WhenByteBuf.writerIndex()
+minWritableBytes
>ByteBuf.maxCapacity()
:true
- the capacity of the buffer is expanded toByteBuf.maxCapacity()
false
- the capacity of the buffer is unchanged
- Returns:
0
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.
-
getBoolean
public boolean getBoolean(int index)
Description copied from class:ByteBuf
Gets a boolean at the specified absolute (@code index) in this buffer. This method does not modify thereaderIndex
orwriterIndex
of this buffer.- Overrides:
getBoolean
in classWrappedByteBuf
-
getByte
public byte getByte(int index)
Description copied from class:ByteBuf
Gets a byte at the specified absoluteindex
in this buffer. This method does not modifyreaderIndex
orwriterIndex
of this buffer.- Overrides:
getByte
in classWrappedByteBuf
-
getUnsignedByte
public short getUnsignedByte(int index)
Description copied from class:ByteBuf
Gets an unsigned byte at the specified absoluteindex
in this buffer. This method does not modifyreaderIndex
orwriterIndex
of this buffer.- Overrides:
getUnsignedByte
in classWrappedByteBuf
-
getShort
public short getShort(int index)
Description copied from class:ByteBuf
Gets a 16-bit short integer at the specified absoluteindex
in this buffer. This method does not modifyreaderIndex
orwriterIndex
of this buffer.- Overrides:
getShort
in classWrappedByteBuf
-
getUnsignedShort
public int getUnsignedShort(int index)
Description copied from class:ByteBuf
Gets an unsigned 16-bit short integer at the specified absoluteindex
in this buffer. This method does not modifyreaderIndex
orwriterIndex
of this buffer.- Overrides:
getUnsignedShort
in classWrappedByteBuf
-
getMedium
public int getMedium(int index)
Description copied from class:ByteBuf
Gets a 24-bit medium integer at the specified absoluteindex
in this buffer. This method does not modifyreaderIndex
orwriterIndex
of this buffer.- Overrides:
getMedium
in classWrappedByteBuf
-
getUnsignedMedium
public int getUnsignedMedium(int index)
Description copied from class:ByteBuf
Gets an unsigned 24-bit medium integer at the specified absoluteindex
in this buffer. This method does not modifyreaderIndex
orwriterIndex
of this buffer.- Overrides:
getUnsignedMedium
in classWrappedByteBuf
-
getInt
public int getInt(int index)
Description copied from class:ByteBuf
Gets a 32-bit integer at the specified absoluteindex
in this buffer. This method does not modifyreaderIndex
orwriterIndex
of this buffer.- Overrides:
getInt
in classWrappedByteBuf
-
getUnsignedInt
public long getUnsignedInt(int index)
Description copied from class:ByteBuf
Gets an unsigned 32-bit integer at the specified absoluteindex
in this buffer. This method does not modifyreaderIndex
orwriterIndex
of this buffer.- Overrides:
getUnsignedInt
in classWrappedByteBuf
-
getLong
public long getLong(int index)
Description copied from class:ByteBuf
Gets a 64-bit long integer at the specified absoluteindex
in this buffer. This method does not modifyreaderIndex
orwriterIndex
of this buffer.- Overrides:
getLong
in classWrappedByteBuf
-
getChar
public char getChar(int index)
Description copied from class:ByteBuf
Gets a 2-byte UTF-16 character at the specified absoluteindex
in this buffer. This method does not modifyreaderIndex
orwriterIndex
of this buffer.- Overrides:
getChar
in classWrappedByteBuf
-
getFloat
public float getFloat(int index)
Description copied from class:ByteBuf
Gets a 32-bit floating point number at the specified absoluteindex
in this buffer. This method does not modifyreaderIndex
orwriterIndex
of this buffer.- Overrides:
getFloat
in classWrappedByteBuf
-
getDouble
public double getDouble(int index)
Description copied from class:ByteBuf
Gets a 64-bit floating point number at the specified absoluteindex
in this buffer. This method does not modifyreaderIndex
orwriterIndex
of this buffer.- Overrides:
getDouble
in classWrappedByteBuf
-
getBytes
public ByteBuf getBytes(int index, ByteBuf dst)
Description copied from class:ByteBuf
Transfers this buffer's data to the specified destination starting at the specified absoluteindex
until the destination becomes non-writable. This method is basically same withByteBuf.getBytes(int, ByteBuf, int, int)
, except that this method increases thewriterIndex
of the destination by the number of the transferred bytes whileByteBuf.getBytes(int, ByteBuf, int, int)
does not. This method does not modifyreaderIndex
orwriterIndex
of the source buffer (i.e.this
).- Overrides:
getBytes
in classWrappedByteBuf
-
getBytes
public ByteBuf getBytes(int index, ByteBuf dst, int length)
Description copied from class:ByteBuf
Transfers this buffer's data to the specified destination starting at the specified absoluteindex
. This method is basically same withByteBuf.getBytes(int, ByteBuf, int, int)
, except that this method increases thewriterIndex
of the destination by the number of the transferred bytes whileByteBuf.getBytes(int, ByteBuf, int, int)
does not. This method does not modifyreaderIndex
orwriterIndex
of the source buffer (i.e.this
).- Overrides:
getBytes
in classWrappedByteBuf
length
- the number of bytes to transfer
-
getBytes
public ByteBuf getBytes(int index, ByteBuf dst, int dstIndex, int length)
Description copied from class:ByteBuf
Transfers this buffer's data to the specified destination starting at the specified absoluteindex
. This method does not modifyreaderIndex
orwriterIndex
of both the source (i.e.this
) and the destination.- Overrides:
getBytes
in classWrappedByteBuf
dstIndex
- the first index of the destinationlength
- the number of bytes to transfer
-
getBytes
public ByteBuf getBytes(int index, byte[] dst)
Description copied from class:ByteBuf
Transfers this buffer's data to the specified destination starting at the specified absoluteindex
. This method does not modifyreaderIndex
orwriterIndex
of this buffer- Overrides:
getBytes
in classWrappedByteBuf
-
getBytes
public ByteBuf getBytes(int index, byte[] dst, int dstIndex, int length)
Description copied from class:ByteBuf
Transfers this buffer's data to the specified destination starting at the specified absoluteindex
. This method does not modifyreaderIndex
orwriterIndex
of this buffer.- Overrides:
getBytes
in classWrappedByteBuf
dstIndex
- the first index of the destinationlength
- the number of bytes to transfer
-
getBytes
public ByteBuf getBytes(int index, java.nio.ByteBuffer dst)
Description copied from class:ByteBuf
Transfers this buffer's data to the specified destination starting at the specified absoluteindex
until the destination's position reaches its limit. This method does not modifyreaderIndex
orwriterIndex
of this buffer while the destination'sposition
will be increased.- Overrides:
getBytes
in classWrappedByteBuf
-
getBytes
public ByteBuf getBytes(int index, java.io.OutputStream out, int length) throws java.io.IOException
Description copied from class:ByteBuf
Transfers this buffer's data to the specified stream starting at the specified absoluteindex
. This method does not modifyreaderIndex
orwriterIndex
of this buffer.- Overrides:
getBytes
in classWrappedByteBuf
length
- the number of bytes to transfer- Throws:
java.io.IOException
- if the specified stream threw an exception during I/O
-
getBytes
public int getBytes(int index, java.nio.channels.GatheringByteChannel out, int length) throws java.io.IOException
Description copied from class:ByteBuf
Transfers this buffer's data to the specified channel starting at the specified absoluteindex
. This method does not modifyreaderIndex
orwriterIndex
of this buffer.- Overrides:
getBytes
in classWrappedByteBuf
length
- the maximum number of bytes to transfer- Returns:
- the actual number of bytes written out to the specified channel
- Throws:
java.io.IOException
- if the specified channel threw an exception during I/O
-
getCharSequence
public java.lang.CharSequence getCharSequence(int index, int length, java.nio.charset.Charset charset)
Description copied from class:ByteBuf
Gets aCharSequence
with the given length at the given index.- Overrides:
getCharSequence
in classWrappedByteBuf
length
- the length to readcharset
- that should be used- Returns:
- the sequence
-
setBoolean
public ByteBuf setBoolean(int index, boolean value)
Description copied from class:ByteBuf
Sets the specified boolean at the specified absoluteindex
in this buffer. This method does not modifyreaderIndex
orwriterIndex
of this buffer.- Overrides:
setBoolean
in classWrappedByteBuf
-
setByte
public ByteBuf setByte(int index, int value)
Description copied from class:ByteBuf
Sets the specified byte at the specified absoluteindex
in this buffer. The 24 high-order bits of the specified value are ignored. This method does not modifyreaderIndex
orwriterIndex
of this buffer.- Overrides:
setByte
in classWrappedByteBuf
-
setShort
public ByteBuf setShort(int index, int value)
Description copied from class:ByteBuf
Sets the specified 16-bit short integer at the specified absoluteindex
in this buffer. The 16 high-order bits of the specified value are ignored. This method does not modifyreaderIndex
orwriterIndex
of this buffer.- Overrides:
setShort
in classWrappedByteBuf
-
setMedium
public ByteBuf setMedium(int index, int value)
Description copied from class:ByteBuf
Sets the specified 24-bit medium integer at the specified absoluteindex
in this buffer. Please note that the most significant byte is ignored in the specified value. This method does not modifyreaderIndex
orwriterIndex
of this buffer.- Overrides:
setMedium
in classWrappedByteBuf
-
setInt
public ByteBuf setInt(int index, int value)
Description copied from class:ByteBuf
Sets the specified 32-bit integer at the specified absoluteindex
in this buffer. This method does not modifyreaderIndex
orwriterIndex
of this buffer.- Overrides:
setInt
in classWrappedByteBuf
-
setLong
public ByteBuf setLong(int index, long value)
Description copied from class:ByteBuf
Sets the specified 64-bit long integer at the specified absoluteindex
in this buffer. This method does not modifyreaderIndex
orwriterIndex
of this buffer.- Overrides:
setLong
in classWrappedByteBuf
-
setChar
public ByteBuf setChar(int index, int value)
Description copied from class:ByteBuf
Sets the specified 2-byte UTF-16 character at the specified absoluteindex
in this buffer. The 16 high-order bits of the specified value are ignored. This method does not modifyreaderIndex
orwriterIndex
of this buffer.- Overrides:
setChar
in classWrappedByteBuf
-
setFloat
public ByteBuf setFloat(int index, float value)
Description copied from class:ByteBuf
Sets the specified 32-bit floating-point number at the specified absoluteindex
in this buffer. This method does not modifyreaderIndex
orwriterIndex
of this buffer.- Overrides:
setFloat
in classWrappedByteBuf
-
setDouble
public ByteBuf setDouble(int index, double value)
Description copied from class:ByteBuf
Sets the specified 64-bit floating-point number at the specified absoluteindex
in this buffer. This method does not modifyreaderIndex
orwriterIndex
of this buffer.- Overrides:
setDouble
in classWrappedByteBuf
-
setBytes
public ByteBuf setBytes(int index, ByteBuf src)
Description copied from class:ByteBuf
Transfers the specified source buffer's data to this buffer starting at the specified absoluteindex
until the source buffer becomes unreadable. This method is basically same withByteBuf.setBytes(int, ByteBuf, int, int)
, except that this method increases thereaderIndex
of the source buffer by the number of the transferred bytes whileByteBuf.setBytes(int, ByteBuf, int, int)
does not. This method does not modifyreaderIndex
orwriterIndex
of this buffer (i.e.this
).- Overrides:
setBytes
in classWrappedByteBuf
-
setBytes
public ByteBuf setBytes(int index, ByteBuf src, int length)
Description copied from class:ByteBuf
Transfers the specified source buffer's data to this buffer starting at the specified absoluteindex
. This method is basically same withByteBuf.setBytes(int, ByteBuf, int, int)
, except that this method increases thereaderIndex
of the source buffer by the number of the transferred bytes whileByteBuf.setBytes(int, ByteBuf, int, int)
does not. This method does not modifyreaderIndex
orwriterIndex
of this buffer (i.e.this
).- Overrides:
setBytes
in classWrappedByteBuf
length
- the number of bytes to transfer
-
setBytes
public ByteBuf setBytes(int index, ByteBuf src, int srcIndex, int length)
Description copied from class:ByteBuf
Transfers the specified source buffer's data to this buffer starting at the specified absoluteindex
. This method does not modifyreaderIndex
orwriterIndex
of both the source (i.e.this
) and the destination.- Overrides:
setBytes
in classWrappedByteBuf
srcIndex
- the first index of the sourcelength
- the number of bytes to transfer
-
setBytes
public ByteBuf setBytes(int index, byte[] src)
Description copied from class:ByteBuf
Transfers the specified source array's data to this buffer starting at the specified absoluteindex
. This method does not modifyreaderIndex
orwriterIndex
of this buffer.- Overrides:
setBytes
in classWrappedByteBuf
-
setBytes
public ByteBuf setBytes(int index, byte[] src, int srcIndex, int length)
Description copied from class:ByteBuf
Transfers the specified source array's data to this buffer starting at the specified absoluteindex
. This method does not modifyreaderIndex
orwriterIndex
of this buffer.- Overrides:
setBytes
in classWrappedByteBuf
-
setBytes
public ByteBuf setBytes(int index, java.nio.ByteBuffer src)
Description copied from class:ByteBuf
Transfers the specified source buffer's data to this buffer starting at the specified absoluteindex
until the source buffer's position reaches its limit. This method does not modifyreaderIndex
orwriterIndex
of this buffer.- Overrides:
setBytes
in classWrappedByteBuf
-
setBytes
public int setBytes(int index, java.io.InputStream in, int length) throws java.io.IOException
Description copied from class:ByteBuf
Transfers the content of the specified source stream to this buffer starting at the specified absoluteindex
. This method does not modifyreaderIndex
orwriterIndex
of this buffer.- Overrides:
setBytes
in classWrappedByteBuf
length
- the number of bytes to transfer- Returns:
- the actual number of bytes read in from the specified channel.
-1
if the specifiedInputStream
reached EOF. - Throws:
java.io.IOException
- if the specified stream threw an exception during I/O
-
setBytes
public int setBytes(int index, java.nio.channels.ScatteringByteChannel in, int length) throws java.io.IOException
Description copied from class:ByteBuf
Transfers the content of the specified source channel to this buffer starting at the specified absoluteindex
. This method does not modifyreaderIndex
orwriterIndex
of this buffer.- Overrides:
setBytes
in classWrappedByteBuf
length
- the maximum number of bytes to transfer- Returns:
- the actual number of bytes read in from the specified channel.
-1
if the specified channel is closed or it reached EOF. - Throws:
java.io.IOException
- if the specified channel threw an exception during I/O
-
setZero
public ByteBuf setZero(int index, int length)
Description copied from class:ByteBuf
Fills this buffer with NUL (0x00) starting at the specified absoluteindex
. This method does not modifyreaderIndex
orwriterIndex
of this buffer.- Overrides:
setZero
in classWrappedByteBuf
length
- the number of NULs to write to the buffer
-
setCharSequence
public int setCharSequence(int index, java.lang.CharSequence sequence, java.nio.charset.Charset charset)
Description copied from class:ByteBuf
Writes the specifiedCharSequence
at the givenindex
. ThewriterIndex
is not modified by this method.- Overrides:
setCharSequence
in classWrappedByteBuf
- Parameters:
index
- on which the sequence should be writtensequence
- to writecharset
- that should be used.- Returns:
- the written number of bytes.
-
readBoolean
public boolean readBoolean()
Description copied from class:ByteBuf
Gets a boolean at the currentreaderIndex
and increases thereaderIndex
by1
in this buffer.- Overrides:
readBoolean
in classWrappedByteBuf
-
readByte
public byte readByte()
Description copied from class:ByteBuf
Gets a byte at the currentreaderIndex
and increases thereaderIndex
by1
in this buffer.- Overrides:
readByte
in classWrappedByteBuf
-
readUnsignedByte
public short readUnsignedByte()
Description copied from class:ByteBuf
Gets an unsigned byte at the currentreaderIndex
and increases thereaderIndex
by1
in this buffer.- Overrides:
readUnsignedByte
in classWrappedByteBuf
-
readShort
public short readShort()
Description copied from class:ByteBuf
Gets a 16-bit short integer at the currentreaderIndex
and increases thereaderIndex
by2
in this buffer.- Overrides:
readShort
in classWrappedByteBuf
-
readUnsignedShort
public int readUnsignedShort()
Description copied from class:ByteBuf
Gets an unsigned 16-bit short integer at the currentreaderIndex
and increases thereaderIndex
by2
in this buffer.- Overrides:
readUnsignedShort
in classWrappedByteBuf
-
readMedium
public int readMedium()
Description copied from class:ByteBuf
Gets a 24-bit medium integer at the currentreaderIndex
and increases thereaderIndex
by3
in this buffer.- Overrides:
readMedium
in classWrappedByteBuf
-
readUnsignedMedium
public int readUnsignedMedium()
Description copied from class:ByteBuf
Gets an unsigned 24-bit medium integer at the currentreaderIndex
and increases thereaderIndex
by3
in this buffer.- Overrides:
readUnsignedMedium
in classWrappedByteBuf
-
readInt
public int readInt()
Description copied from class:ByteBuf
Gets a 32-bit integer at the currentreaderIndex
and increases thereaderIndex
by4
in this buffer.- Overrides:
readInt
in classWrappedByteBuf
-
readUnsignedInt
public long readUnsignedInt()
Description copied from class:ByteBuf
Gets an unsigned 32-bit integer at the currentreaderIndex
and increases thereaderIndex
by4
in this buffer.- Overrides:
readUnsignedInt
in classWrappedByteBuf
-
readLong
public long readLong()
Description copied from class:ByteBuf
Gets a 64-bit integer at the currentreaderIndex
and increases thereaderIndex
by8
in this buffer.- Overrides:
readLong
in classWrappedByteBuf
-
readChar
public char readChar()
Description copied from class:ByteBuf
Gets a 2-byte UTF-16 character at the currentreaderIndex
and increases thereaderIndex
by2
in this buffer.- Overrides:
readChar
in classWrappedByteBuf
-
readFloat
public float readFloat()
Description copied from class:ByteBuf
Gets a 32-bit floating point number at the currentreaderIndex
and increases thereaderIndex
by4
in this buffer.- Overrides:
readFloat
in classWrappedByteBuf
-
readDouble
public double readDouble()
Description copied from class:ByteBuf
Gets a 64-bit floating point number at the currentreaderIndex
and increases thereaderIndex
by8
in this buffer.- Overrides:
readDouble
in classWrappedByteBuf
-
readBytes
public ByteBuf readBytes(int length)
Description copied from class:ByteBuf
Transfers this buffer's data to a newly created buffer starting at the currentreaderIndex
and increases thereaderIndex
by the number of the transferred bytes (=length
). The returned buffer'sreaderIndex
andwriterIndex
are0
andlength
respectively.- Overrides:
readBytes
in classWrappedByteBuf
- Parameters:
length
- the number of bytes to transfer- Returns:
- the newly created buffer which contains the transferred bytes
-
readBytes
public ByteBuf readBytes(ByteBuf dst)
Description copied from class:ByteBuf
Transfers this buffer's data to the specified destination starting at the currentreaderIndex
until the destination becomes non-writable, and increases thereaderIndex
by the number of the transferred bytes. This method is basically same withByteBuf.readBytes(ByteBuf, int, int)
, except that this method increases thewriterIndex
of the destination by the number of the transferred bytes whileByteBuf.readBytes(ByteBuf, int, int)
does not.- Overrides:
readBytes
in classWrappedByteBuf
-
readBytes
public ByteBuf readBytes(ByteBuf dst, int length)
Description copied from class:ByteBuf
Transfers this buffer's data to the specified destination starting at the currentreaderIndex
and increases thereaderIndex
by the number of the transferred bytes (=length
). This method is basically same withByteBuf.readBytes(ByteBuf, int, int)
, except that this method increases thewriterIndex
of the destination by the number of the transferred bytes (=length
) whileByteBuf.readBytes(ByteBuf, int, int)
does not.- Overrides:
readBytes
in classWrappedByteBuf
-
readBytes
public ByteBuf readBytes(ByteBuf dst, int dstIndex, int length)
Description copied from class:ByteBuf
Transfers this buffer's data to the specified destination starting at the currentreaderIndex
and increases thereaderIndex
by the number of the transferred bytes (=length
).- Overrides:
readBytes
in classWrappedByteBuf
dstIndex
- the first index of the destinationlength
- the number of bytes to transfer
-
readBytes
public ByteBuf readBytes(byte[] dst)
Description copied from class:ByteBuf
Transfers this buffer's data to the specified destination starting at the currentreaderIndex
and increases thereaderIndex
by the number of the transferred bytes (=dst.length
).- Overrides:
readBytes
in classWrappedByteBuf
-
readBytes
public ByteBuf readBytes(byte[] dst, int dstIndex, int length)
Description copied from class:ByteBuf
Transfers this buffer's data to the specified destination starting at the currentreaderIndex
and increases thereaderIndex
by the number of the transferred bytes (=length
).- Overrides:
readBytes
in classWrappedByteBuf
dstIndex
- the first index of the destinationlength
- the number of bytes to transfer
-
readBytes
public ByteBuf readBytes(java.nio.ByteBuffer dst)
Description copied from class:ByteBuf
Transfers this buffer's data to the specified destination starting at the currentreaderIndex
until the destination's position reaches its limit, and increases thereaderIndex
by the number of the transferred bytes.- Overrides:
readBytes
in classWrappedByteBuf
-
readBytes
public ByteBuf readBytes(java.io.OutputStream out, int length) throws java.io.IOException
Description copied from class:ByteBuf
Transfers this buffer's data to the specified stream starting at the currentreaderIndex
.- Overrides:
readBytes
in classWrappedByteBuf
length
- the number of bytes to transfer- Throws:
java.io.IOException
- if the specified stream threw an exception during I/O
-
readBytes
public int readBytes(java.nio.channels.GatheringByteChannel out, int length) throws java.io.IOException
Description copied from class:ByteBuf
Transfers this buffer's data to the specified stream starting at the currentreaderIndex
.- Overrides:
readBytes
in classWrappedByteBuf
length
- the maximum number of bytes to transfer- Returns:
- the actual number of bytes written out to the specified channel
- Throws:
java.io.IOException
- if the specified channel threw an exception during I/O
-
readCharSequence
public java.lang.CharSequence readCharSequence(int length, java.nio.charset.Charset charset)
Description copied from class:ByteBuf
Gets aCharSequence
with the given length at the currentreaderIndex
and increases thereaderIndex
by the given length.- Overrides:
readCharSequence
in classWrappedByteBuf
- Parameters:
length
- the length to readcharset
- that should be used- Returns:
- the sequence
-
skipBytes
public ByteBuf skipBytes(int length)
Description copied from class:ByteBuf
Increases the currentreaderIndex
by the specifiedlength
in this buffer.- Overrides:
skipBytes
in classWrappedByteBuf
-
writeBoolean
public ByteBuf writeBoolean(boolean value)
Description copied from class:ByteBuf
Sets the specified boolean at the currentwriterIndex
and increases thewriterIndex
by1
in this buffer. Ifthis.writableBytes
is less than1
,ByteBuf.ensureWritable(int)
will be called in an attempt to expand capacity to accommodate.- Overrides:
writeBoolean
in classWrappedByteBuf
-
writeByte
public ByteBuf writeByte(int value)
Description copied from class:ByteBuf
Sets the specified byte at the currentwriterIndex
and increases thewriterIndex
by1
in this buffer. The 24 high-order bits of the specified value are ignored. Ifthis.writableBytes
is less than1
,ByteBuf.ensureWritable(int)
will be called in an attempt to expand capacity to accommodate.- Overrides:
writeByte
in classWrappedByteBuf
-
writeShort
public ByteBuf writeShort(int value)
Description copied from class:ByteBuf
Sets the specified 16-bit short integer at the currentwriterIndex
and increases thewriterIndex
by2
in this buffer. The 16 high-order bits of the specified value are ignored. Ifthis.writableBytes
is less than2
,ByteBuf.ensureWritable(int)
will be called in an attempt to expand capacity to accommodate.- Overrides:
writeShort
in classWrappedByteBuf
-
writeMedium
public ByteBuf writeMedium(int value)
Description copied from class:ByteBuf
Sets the specified 24-bit medium integer at the currentwriterIndex
and increases thewriterIndex
by3
in this buffer. Ifthis.writableBytes
is less than3
,ByteBuf.ensureWritable(int)
will be called in an attempt to expand capacity to accommodate.- Overrides:
writeMedium
in classWrappedByteBuf
-
writeInt
public ByteBuf writeInt(int value)
Description copied from class:ByteBuf
Sets the specified 32-bit integer at the currentwriterIndex
and increases thewriterIndex
by4
in this buffer. Ifthis.writableBytes
is less than4
,ByteBuf.ensureWritable(int)
will be called in an attempt to expand capacity to accommodate.- Overrides:
writeInt
in classWrappedByteBuf
-
writeLong
public ByteBuf writeLong(long value)
Description copied from class:ByteBuf
Sets the specified 64-bit long integer at the currentwriterIndex
and increases thewriterIndex
by8
in this buffer. Ifthis.writableBytes
is less than8
,ByteBuf.ensureWritable(int)
will be called in an attempt to expand capacity to accommodate.- Overrides:
writeLong
in classWrappedByteBuf
-
writeChar
public ByteBuf writeChar(int value)
Description copied from class:ByteBuf
Sets the specified 2-byte UTF-16 character at the currentwriterIndex
and increases thewriterIndex
by2
in this buffer. The 16 high-order bits of the specified value are ignored. Ifthis.writableBytes
is less than2
,ByteBuf.ensureWritable(int)
will be called in an attempt to expand capacity to accommodate.- Overrides:
writeChar
in classWrappedByteBuf
-
writeFloat
public ByteBuf writeFloat(float value)
Description copied from class:ByteBuf
Sets the specified 32-bit floating point number at the currentwriterIndex
and increases thewriterIndex
by4
in this buffer. Ifthis.writableBytes
is less than4
,ByteBuf.ensureWritable(int)
will be called in an attempt to expand capacity to accommodate.- Overrides:
writeFloat
in classWrappedByteBuf
-
writeDouble
public ByteBuf writeDouble(double value)
Description copied from class:ByteBuf
Sets the specified 64-bit floating point number at the currentwriterIndex
and increases thewriterIndex
by8
in this buffer. Ifthis.writableBytes
is less than8
,ByteBuf.ensureWritable(int)
will be called in an attempt to expand capacity to accommodate.- Overrides:
writeDouble
in classWrappedByteBuf
-
writeBytes
public ByteBuf writeBytes(ByteBuf src)
Description copied from class:ByteBuf
Transfers the specified source buffer's data to this buffer starting at the currentwriterIndex
until the source buffer becomes unreadable, and increases thewriterIndex
by the number of the transferred bytes. This method is basically same withByteBuf.writeBytes(ByteBuf, int, int)
, except that this method increases thereaderIndex
of the source buffer by the number of the transferred bytes whileByteBuf.writeBytes(ByteBuf, int, int)
does not. Ifthis.writableBytes
is less thansrc.readableBytes
,ByteBuf.ensureWritable(int)
will be called in an attempt to expand capacity to accommodate.- Overrides:
writeBytes
in classWrappedByteBuf
-
writeBytes
public ByteBuf writeBytes(ByteBuf src, int length)
Description copied from class:ByteBuf
Transfers the specified source buffer's data to this buffer starting at the currentwriterIndex
and increases thewriterIndex
by the number of the transferred bytes (=length
). This method is basically same withByteBuf.writeBytes(ByteBuf, int, int)
, except that this method increases thereaderIndex
of the source buffer by the number of the transferred bytes (=length
) whileByteBuf.writeBytes(ByteBuf, int, int)
does not. Ifthis.writableBytes
is less thanlength
,ByteBuf.ensureWritable(int)
will be called in an attempt to expand capacity to accommodate.- Overrides:
writeBytes
in classWrappedByteBuf
length
- the number of bytes to transfer
-
writeBytes
public ByteBuf writeBytes(ByteBuf src, int srcIndex, int length)
Description copied from class:ByteBuf
Transfers the specified source buffer's data to this buffer starting at the currentwriterIndex
and increases thewriterIndex
by the number of the transferred bytes (=length
). Ifthis.writableBytes
is less thanlength
,ByteBuf.ensureWritable(int)
will be called in an attempt to expand capacity to accommodate.- Overrides:
writeBytes
in classWrappedByteBuf
srcIndex
- the first index of the sourcelength
- the number of bytes to transfer
-
writeBytes
public ByteBuf writeBytes(byte[] src)
Description copied from class:ByteBuf
Transfers the specified source array's data to this buffer starting at the currentwriterIndex
and increases thewriterIndex
by the number of the transferred bytes (=src.length
). Ifthis.writableBytes
is less thansrc.length
,ByteBuf.ensureWritable(int)
will be called in an attempt to expand capacity to accommodate.- Overrides:
writeBytes
in classWrappedByteBuf
-
writeBytes
public ByteBuf writeBytes(byte[] src, int srcIndex, int length)
Description copied from class:ByteBuf
Transfers the specified source array's data to this buffer starting at the currentwriterIndex
and increases thewriterIndex
by the number of the transferred bytes (=length
). Ifthis.writableBytes
is less thanlength
,ByteBuf.ensureWritable(int)
will be called in an attempt to expand capacity to accommodate.- Overrides:
writeBytes
in classWrappedByteBuf
srcIndex
- the first index of the sourcelength
- the number of bytes to transfer
-
writeBytes
public ByteBuf writeBytes(java.nio.ByteBuffer src)
Description copied from class:ByteBuf
Transfers the specified source buffer's data to this buffer starting at the currentwriterIndex
until the source buffer's position reaches its limit, and increases thewriterIndex
by the number of the transferred bytes. Ifthis.writableBytes
is less thansrc.remaining()
,ByteBuf.ensureWritable(int)
will be called in an attempt to expand capacity to accommodate.- Overrides:
writeBytes
in classWrappedByteBuf
-
writeBytes
public int writeBytes(java.io.InputStream in, int length) throws java.io.IOException
Description copied from class:ByteBuf
Transfers the content of the specified stream to this buffer starting at the currentwriterIndex
and increases thewriterIndex
by the number of the transferred bytes. Ifthis.writableBytes
is less thanlength
,ByteBuf.ensureWritable(int)
will be called in an attempt to expand capacity to accommodate.- Overrides:
writeBytes
in classWrappedByteBuf
length
- the number of bytes to transfer- Returns:
- the actual number of bytes read in from the specified channel.
-1
if the specifiedInputStream
reached EOF. - Throws:
java.io.IOException
- if the specified stream threw an exception during I/O
-
writeBytes
public int writeBytes(java.nio.channels.ScatteringByteChannel in, int length) throws java.io.IOException
Description copied from class:ByteBuf
Transfers the content of the specified channel to this buffer starting at the currentwriterIndex
and increases thewriterIndex
by the number of the transferred bytes. Ifthis.writableBytes
is less thanlength
,ByteBuf.ensureWritable(int)
will be called in an attempt to expand capacity to accommodate.- Overrides:
writeBytes
in classWrappedByteBuf
length
- the maximum number of bytes to transfer- Returns:
- the actual number of bytes read in from the specified channel.
-1
if the specified channel is closed or it reached EOF. - Throws:
java.io.IOException
- if the specified channel threw an exception during I/O
-
writeZero
public ByteBuf writeZero(int length)
Description copied from class:ByteBuf
Fills this buffer with NUL (0x00) starting at the currentwriterIndex
and increases thewriterIndex
by the specifiedlength
. Ifthis.writableBytes
is less thanlength
,ByteBuf.ensureWritable(int)
will be called in an attempt to expand capacity to accommodate.- Overrides:
writeZero
in classWrappedByteBuf
- Parameters:
length
- the number of NULs to write to the buffer
-
indexOf
public int indexOf(int fromIndex, int toIndex, byte value)
Description copied from class:ByteBuf
Locates the first occurrence of the specifiedvalue
in this buffer. The search takes place from the specifiedfromIndex
(inclusive) to the specifiedtoIndex
(exclusive).If
fromIndex
is greater thantoIndex
, the search is performed in a reversed order fromfromIndex
(exclusive) down totoIndex
(inclusive).Note that the lower index is always included and higher always excluded.
This method does not modify
readerIndex
orwriterIndex
of this buffer.- Overrides:
indexOf
in classWrappedByteBuf
- Returns:
- the absolute index of the first occurrence if found.
-1
otherwise.
-
bytesBefore
public int bytesBefore(byte value)
Description copied from class:ByteBuf
Locates the first occurrence of the specifiedvalue
in this buffer. The search takes place from the currentreaderIndex
(inclusive) to the currentwriterIndex
(exclusive).This method does not modify
readerIndex
orwriterIndex
of this buffer.- Overrides:
bytesBefore
in classWrappedByteBuf
- Returns:
- the number of bytes between the current
readerIndex
and the first occurrence if found.-1
otherwise.
-
bytesBefore
public int bytesBefore(int length, byte value)
Description copied from class:ByteBuf
Locates the first occurrence of the specifiedvalue
in this buffer. The search starts from the currentreaderIndex
(inclusive) and lasts for the specifiedlength
.This method does not modify
readerIndex
orwriterIndex
of this buffer.- Overrides:
bytesBefore
in classWrappedByteBuf
- Returns:
- the number of bytes between the current
readerIndex
and the first occurrence if found.-1
otherwise.
-
bytesBefore
public int bytesBefore(int index, int length, byte value)
Description copied from class:ByteBuf
Locates the first occurrence of the specifiedvalue
in this buffer. The search starts from the specifiedindex
(inclusive) and lasts for the specifiedlength
.This method does not modify
readerIndex
orwriterIndex
of this buffer.- Overrides:
bytesBefore
in classWrappedByteBuf
- Returns:
- the number of bytes between the specified
index
and the first occurrence if found.-1
otherwise.
-
forEachByte
public int forEachByte(ByteProcessor processor)
Description copied from class:ByteBuf
Iterates over the readable bytes of this buffer with the specifiedprocessor
in ascending order.- Overrides:
forEachByte
in classWrappedByteBuf
- Returns:
-1
if the processor iterated to or beyond the end of the readable bytes. The last-visited index If theByteProcessor.process(byte)
returnedfalse
.
-
forEachByte
public int forEachByte(int index, int length, ByteProcessor processor)
Description copied from class:ByteBuf
Iterates over the specified area of this buffer with the specifiedprocessor
in ascending order. (i.e.index
,(index + 1)
, ..(index + length - 1)
)- Overrides:
forEachByte
in classWrappedByteBuf
- Returns:
-1
if the processor iterated to or beyond the end of the specified area. The last-visited index If theByteProcessor.process(byte)
returnedfalse
.
-
forEachByteDesc
public int forEachByteDesc(ByteProcessor processor)
Description copied from class:ByteBuf
Iterates over the readable bytes of this buffer with the specifiedprocessor
in descending order.- Overrides:
forEachByteDesc
in classWrappedByteBuf
- Returns:
-1
if the processor iterated to or beyond the beginning of the readable bytes. The last-visited index If theByteProcessor.process(byte)
returnedfalse
.
-
forEachByteDesc
public int forEachByteDesc(int index, int length, ByteProcessor processor)
Description copied from class:ByteBuf
Iterates over the specified area of this buffer with the specifiedprocessor
in descending order. (i.e.(index + length - 1)
,(index + length - 2)
, ...index
)- Overrides:
forEachByteDesc
in classWrappedByteBuf
- Returns:
-1
if the processor iterated to or beyond the beginning of the specified area. The last-visited index If theByteProcessor.process(byte)
returnedfalse
.
-
copy
public ByteBuf copy()
Description copied from class:ByteBuf
Returns a copy of this buffer's readable bytes. Modifying the content of the returned buffer or this buffer does not affect each other at all. This method is identical tobuf.copy(buf.readerIndex(), buf.readableBytes())
. This method does not modifyreaderIndex
orwriterIndex
of this buffer.- Overrides:
copy
in classWrappedByteBuf
-
copy
public ByteBuf copy(int index, int length)
Description copied from class:ByteBuf
Returns a copy of this buffer's sub-region. Modifying the content of the returned buffer or this buffer does not affect each other at all. This method does not modifyreaderIndex
orwriterIndex
of this buffer.- Overrides:
copy
in classWrappedByteBuf
-
nioBufferCount
public int nioBufferCount()
Description copied from class:ByteBuf
Returns the maximum number of NIOByteBuffer
s that consist this buffer. Note thatByteBuf.nioBuffers()
orByteBuf.nioBuffers(int, int)
might return a less number ofByteBuffer
s.- Overrides:
nioBufferCount
in classWrappedByteBuf
- Returns:
-1
if this buffer has no underlyingByteBuffer
. the number of the underlyingByteBuffer
s if this buffer has at least one underlyingByteBuffer
. Note that this method does not return0
to avoid confusion.- See Also:
ByteBuf.nioBuffer()
,ByteBuf.nioBuffer(int, int)
,ByteBuf.nioBuffers()
,ByteBuf.nioBuffers(int, int)
-
nioBuffer
public java.nio.ByteBuffer nioBuffer()
Description copied from class:ByteBuf
Exposes this buffer's readable bytes as an NIOByteBuffer
. The returned buffer either share or contains the copied content of 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 tobuf.nioBuffer(buf.readerIndex(), buf.readableBytes())
. This method does not modifyreaderIndex
orwriterIndex
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.- Overrides:
nioBuffer
in classWrappedByteBuf
- See Also:
ByteBuf.nioBufferCount()
,ByteBuf.nioBuffers()
,ByteBuf.nioBuffers(int, int)
-
nioBuffer
public java.nio.ByteBuffer nioBuffer(int index, int length)
Description copied from class:ByteBuf
Exposes this buffer's sub-region as an NIOByteBuffer
. The returned buffer either share or contains the copied content of 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 modifyreaderIndex
orwriterIndex
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.- Overrides:
nioBuffer
in classWrappedByteBuf
- See Also:
ByteBuf.nioBufferCount()
,ByteBuf.nioBuffers()
,ByteBuf.nioBuffers(int, int)
-
nioBuffers
public java.nio.ByteBuffer[] nioBuffers()
Description copied from class:ByteBuf
Exposes this buffer's readable bytes as an NIOByteBuffer
's. The returned buffer either share or contains the copied content of 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 modifyreaderIndex
orwriterIndex
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.- Overrides:
nioBuffers
in classWrappedByteBuf
- See Also:
ByteBuf.nioBufferCount()
,ByteBuf.nioBuffer()
,ByteBuf.nioBuffer(int, int)
-
nioBuffers
public java.nio.ByteBuffer[] nioBuffers(int index, int length)
Description copied from class:ByteBuf
Exposes this buffer's bytes as an NIOByteBuffer
's for the specified index and length The returned buffer either share or contains the copied content of 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 modifyreaderIndex
orwriterIndex
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.- Overrides:
nioBuffers
in classWrappedByteBuf
- See Also:
ByteBuf.nioBufferCount()
,ByteBuf.nioBuffer()
,ByteBuf.nioBuffer(int, int)
-
internalNioBuffer
public java.nio.ByteBuffer internalNioBuffer(int index, int length)
Description copied from class:ByteBuf
Internal use only: Exposes the internal NIO buffer.- Overrides:
internalNioBuffer
in classWrappedByteBuf
-
toString
public java.lang.String toString(java.nio.charset.Charset charset)
Description copied from class:ByteBuf
Decodes this buffer's readable bytes into a string with the specified character set name. This method is identical tobuf.toString(buf.readerIndex(), buf.readableBytes(), charsetName)
. This method does not modifyreaderIndex
orwriterIndex
of this buffer.- Overrides:
toString
in classWrappedByteBuf
-
toString
public java.lang.String toString(int index, int length, java.nio.charset.Charset charset)
Description copied from class:ByteBuf
Decodes this buffer's sub-region into a string with the specified character set. This method does not modifyreaderIndex
orwriterIndex
of this buffer.- Overrides:
toString
in classWrappedByteBuf
-
capacity
public ByteBuf capacity(int newCapacity)
Description copied from class:ByteBuf
Adjusts the capacity of this buffer. If thenewCapacity
is less than the current capacity, the content of this buffer is truncated. If thenewCapacity
is greater than the current capacity, the buffer is appended with unspecified data whose length is(newCapacity - currentCapacity)
.- Overrides:
capacity
in classWrappedByteBuf
-
getShortLE
public short getShortLE(int index)
Description copied from class:ByteBuf
Gets a 16-bit short integer at the specified absoluteindex
in this buffer in Little Endian Byte Order. This method does not modifyreaderIndex
orwriterIndex
of this buffer.- Overrides:
getShortLE
in classWrappedByteBuf
-
getUnsignedShortLE
public int getUnsignedShortLE(int index)
Description copied from class:ByteBuf
Gets an unsigned 16-bit short integer at the specified absoluteindex
in this buffer in Little Endian Byte Order. This method does not modifyreaderIndex
orwriterIndex
of this buffer.- Overrides:
getUnsignedShortLE
in classWrappedByteBuf
-
getMediumLE
public int getMediumLE(int index)
Description copied from class:ByteBuf
Gets a 24-bit medium integer at the specified absoluteindex
in this buffer in the Little Endian Byte Order. This method does not modifyreaderIndex
orwriterIndex
of this buffer.- Overrides:
getMediumLE
in classWrappedByteBuf
-
getUnsignedMediumLE
public int getUnsignedMediumLE(int index)
Description copied from class:ByteBuf
Gets an unsigned 24-bit medium integer at the specified absoluteindex
in this buffer in Little Endian Byte Order. This method does not modifyreaderIndex
orwriterIndex
of this buffer.- Overrides:
getUnsignedMediumLE
in classWrappedByteBuf
-
getIntLE
public int getIntLE(int index)
Description copied from class:ByteBuf
Gets a 32-bit integer at the specified absoluteindex
in this buffer with Little Endian Byte Order. This method does not modifyreaderIndex
orwriterIndex
of this buffer.- Overrides:
getIntLE
in classWrappedByteBuf
-
getUnsignedIntLE
public long getUnsignedIntLE(int index)
Description copied from class:ByteBuf
Gets an unsigned 32-bit integer at the specified absoluteindex
in this buffer in Little Endian Byte Order. This method does not modifyreaderIndex
orwriterIndex
of this buffer.- Overrides:
getUnsignedIntLE
in classWrappedByteBuf
-
getLongLE
public long getLongLE(int index)
Description copied from class:ByteBuf
Gets a 64-bit long integer at the specified absoluteindex
in this buffer in Little Endian Byte Order. This method does not modifyreaderIndex
orwriterIndex
of this buffer.- Overrides:
getLongLE
in classWrappedByteBuf
-
setShortLE
public ByteBuf setShortLE(int index, int value)
Description copied from class:ByteBuf
Sets the specified 16-bit short integer at the specified absoluteindex
in this buffer with the Little Endian Byte Order. The 16 high-order bits of the specified value are ignored. This method does not modifyreaderIndex
orwriterIndex
of this buffer.- Overrides:
setShortLE
in classWrappedByteBuf
-
setIntLE
public ByteBuf setIntLE(int index, int value)
Description copied from class:ByteBuf
Sets the specified 32-bit integer at the specified absoluteindex
in this buffer with Little Endian byte order . This method does not modifyreaderIndex
orwriterIndex
of this buffer.- Overrides:
setIntLE
in classWrappedByteBuf
-
setMediumLE
public ByteBuf setMediumLE(int index, int value)
Description copied from class:ByteBuf
Sets the specified 24-bit medium integer at the specified absoluteindex
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 modifyreaderIndex
orwriterIndex
of this buffer.- Overrides:
setMediumLE
in classWrappedByteBuf
-
setLongLE
public ByteBuf setLongLE(int index, long value)
Description copied from class:ByteBuf
Sets the specified 64-bit long integer at the specified absoluteindex
in this buffer in Little Endian Byte Order. This method does not modifyreaderIndex
orwriterIndex
of this buffer.- Overrides:
setLongLE
in classWrappedByteBuf
-
readShortLE
public short readShortLE()
Description copied from class:ByteBuf
Gets a 16-bit short integer at the currentreaderIndex
in the Little Endian Byte Order and increases thereaderIndex
by2
in this buffer.- Overrides:
readShortLE
in classWrappedByteBuf
-
readUnsignedShortLE
public int readUnsignedShortLE()
Description copied from class:ByteBuf
Gets an unsigned 16-bit short integer at the currentreaderIndex
in the Little Endian Byte Order and increases thereaderIndex
by2
in this buffer.- Overrides:
readUnsignedShortLE
in classWrappedByteBuf
-
readMediumLE
public int readMediumLE()
Description copied from class:ByteBuf
Gets a 24-bit medium integer at the currentreaderIndex
in the Little Endian Byte Order and increases thereaderIndex
by3
in this buffer.- Overrides:
readMediumLE
in classWrappedByteBuf
-
readUnsignedMediumLE
public int readUnsignedMediumLE()
Description copied from class:ByteBuf
Gets an unsigned 24-bit medium integer at the currentreaderIndex
in the Little Endian Byte Order and increases thereaderIndex
by3
in this buffer.- Overrides:
readUnsignedMediumLE
in classWrappedByteBuf
-
readIntLE
public int readIntLE()
Description copied from class:ByteBuf
Gets a 32-bit integer at the currentreaderIndex
in the Little Endian Byte Order and increases thereaderIndex
by4
in this buffer.- Overrides:
readIntLE
in classWrappedByteBuf
-
readUnsignedIntLE
public long readUnsignedIntLE()
Description copied from class:ByteBuf
Gets an unsigned 32-bit integer at the currentreaderIndex
in the Little Endian Byte Order and increases thereaderIndex
by4
in this buffer.- Overrides:
readUnsignedIntLE
in classWrappedByteBuf
-
readLongLE
public long readLongLE()
Description copied from class:ByteBuf
Gets a 64-bit integer at the currentreaderIndex
in the Little Endian Byte Order and increases thereaderIndex
by8
in this buffer.- Overrides:
readLongLE
in classWrappedByteBuf
-
writeShortLE
public ByteBuf writeShortLE(int value)
Description copied from class:ByteBuf
Sets the specified 16-bit short integer in the Little Endian Byte Order at the currentwriterIndex
and increases thewriterIndex
by2
in this buffer. The 16 high-order bits of the specified value are ignored. Ifthis.writableBytes
is less than2
,ByteBuf.ensureWritable(int)
will be called in an attempt to expand capacity to accommodate.- Overrides:
writeShortLE
in classWrappedByteBuf
-
writeMediumLE
public ByteBuf writeMediumLE(int value)
Description copied from class:ByteBuf
Sets the specified 24-bit medium integer at the currentwriterIndex
in the Little Endian Byte Order and increases thewriterIndex
by3
in this buffer. Ifthis.writableBytes
is less than3
,ByteBuf.ensureWritable(int)
will be called in an attempt to expand capacity to accommodate.- Overrides:
writeMediumLE
in classWrappedByteBuf
-
writeIntLE
public ByteBuf writeIntLE(int value)
Description copied from class:ByteBuf
Sets the specified 32-bit integer at the currentwriterIndex
in the Little Endian Byte Order and increases thewriterIndex
by4
in this buffer. Ifthis.writableBytes
is less than4
,ByteBuf.ensureWritable(int)
will be called in an attempt to expand capacity to accommodate.- Overrides:
writeIntLE
in classWrappedByteBuf
-
writeLongLE
public ByteBuf writeLongLE(long value)
Description copied from class:ByteBuf
Sets the specified 64-bit long integer at the currentwriterIndex
in the Little Endian Byte Order and increases thewriterIndex
by8
in this buffer. Ifthis.writableBytes
is less than8
,ByteBuf.ensureWritable(int)
will be called in an attempt to expand capacity to accommodate.- Overrides:
writeLongLE
in classWrappedByteBuf
-
writeCharSequence
public int writeCharSequence(java.lang.CharSequence sequence, java.nio.charset.Charset charset)
Description copied from class:ByteBuf
Writes the specifiedCharSequence
at the currentwriterIndex
and increases thewriterIndex
by the written bytes. in this buffer. Ifthis.writableBytes
is not large enough to write the whole sequence,ByteBuf.ensureWritable(int)
will be called in an attempt to expand capacity to accommodate.- Overrides:
writeCharSequence
in classWrappedByteBuf
- Parameters:
sequence
- to writecharset
- that should be used- Returns:
- the written number of bytes
-
getBytes
public int getBytes(int index, java.nio.channels.FileChannel out, long position, int length) throws java.io.IOException
Description copied from class:ByteBuf
Transfers this buffer's data starting at the specified absoluteindex
to the specified channel starting at the given file position. This method does not modifyreaderIndex
orwriterIndex
of this buffer. This method does not modify the channel's position.- Overrides:
getBytes
in classWrappedByteBuf
position
- the file position at which the transfer is to beginlength
- the maximum number of bytes to transfer- Returns:
- the actual number of bytes written out to the specified channel
- Throws:
java.io.IOException
- if the specified channel threw an exception during I/O
-
setBytes
public int setBytes(int index, java.nio.channels.FileChannel in, long position, int length) throws java.io.IOException
Description copied from class:ByteBuf
Transfers the content of the specified source channel starting at the given file position to this buffer starting at the specified absoluteindex
. This method does not modifyreaderIndex
orwriterIndex
of this buffer. This method does not modify the channel's position.- Overrides:
setBytes
in classWrappedByteBuf
position
- the file position at which the transfer is to beginlength
- the maximum number of bytes to transfer- Returns:
- the actual number of bytes read in from the specified channel.
-1
if the specified channel is closed or it reached EOF. - Throws:
java.io.IOException
- if the specified channel threw an exception during I/O
-
readBytes
public int readBytes(java.nio.channels.FileChannel out, long position, int length) throws java.io.IOException
Description copied from class:ByteBuf
Transfers this buffer's data starting at the currentreaderIndex
to the specified channel starting at the given file position. This method does not modify the channel's position.- Overrides:
readBytes
in classWrappedByteBuf
position
- the file position at which the transfer is to beginlength
- the maximum number of bytes to transfer- Returns:
- the actual number of bytes written out to the specified channel
- Throws:
java.io.IOException
- if the specified channel threw an exception during I/O
-
writeBytes
public int writeBytes(java.nio.channels.FileChannel in, long position, int length) throws java.io.IOException
Description copied from class:ByteBuf
Transfers the content of the specified channel starting at the given file position to this buffer starting at the currentwriterIndex
and increases thewriterIndex
by the number of the transferred bytes. This method does not modify the channel's position. Ifthis.writableBytes
is less thanlength
,ByteBuf.ensureWritable(int)
will be called in an attempt to expand capacity to accommodate.- Overrides:
writeBytes
in classWrappedByteBuf
position
- the file position at which the transfer is to beginlength
- the maximum number of bytes to transfer- Returns:
- the actual number of bytes read in from the specified channel.
-1
if the specified channel is closed or it reached EOF. - Throws:
java.io.IOException
- if the specified channel threw an exception during I/O
-
asReadOnly
public ByteBuf asReadOnly()
Description copied from class:ByteBuf
Returns a read-only version of this buffer.- Overrides:
asReadOnly
in classSimpleLeakAwareByteBuf
-
retain
public ByteBuf retain()
Description copied from interface:ReferenceCounted
Increases the reference count by1
.- Specified by:
retain
in interfaceReferenceCounted
- Overrides:
retain
in classWrappedByteBuf
-
retain
public ByteBuf retain(int increment)
Description copied from interface:ReferenceCounted
Increases the reference count by the specifiedincrement
.- Specified by:
retain
in interfaceReferenceCounted
- Overrides:
retain
in classWrappedByteBuf
-
release
public boolean release()
Description copied from interface:ReferenceCounted
Decreases the reference count by1
and deallocates this object if the reference count reaches at0
.- Specified by:
release
in interfaceReferenceCounted
- Overrides:
release
in classSimpleLeakAwareByteBuf
- Returns:
true
if and only if the reference count became0
and this object has been deallocated
-
release
public boolean release(int decrement)
Description copied from interface:ReferenceCounted
Decreases the reference count by the specifieddecrement
and deallocates this object if the reference count reaches at0
.- Specified by:
release
in interfaceReferenceCounted
- Overrides:
release
in classSimpleLeakAwareByteBuf
- Returns:
true
if and only if the reference count became0
and this object has been deallocated
-
touch
public ByteBuf touch()
Description copied from interface:ReferenceCounted
Records the current access location of this object for debugging purposes. If this object is determined to be leaked, the information recorded by this operation will be provided to you viaResourceLeakDetector
. This method is a shortcut totouch(null)
.- Specified by:
touch
in interfaceReferenceCounted
- Overrides:
touch
in classSimpleLeakAwareByteBuf
-
touch
public ByteBuf touch(java.lang.Object hint)
Description copied from interface:ReferenceCounted
Records the current access location of this object with an additional arbitrary information for debugging purposes. If this object is determined to be leaked, the information recorded by this operation will be provided to you viaResourceLeakDetector
.- Specified by:
touch
in interfaceReferenceCounted
- Overrides:
touch
in classSimpleLeakAwareByteBuf
-
newLeakAwareByteBuf
protected AdvancedLeakAwareByteBuf newLeakAwareByteBuf(ByteBuf buf, ByteBuf trackedByteBuf, ResourceLeakTracker<ByteBuf> leakTracker)
- Overrides:
newLeakAwareByteBuf
in classSimpleLeakAwareByteBuf
-
-