Class AdvancedLeakAwareByteBuf
- All Implemented Interfaces:
ByteBufConvertible,ReferenceCounted,Comparable<ByteBuf>
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final booleanprivate static final InternalLoggerprivate static final StringFields inherited from class io.netty.buffer.SimpleLeakAwareByteBuf
leakFields inherited from class io.netty.buffer.WrappedByteBuf
buf -
Constructor Summary
ConstructorsConstructorDescriptionAdvancedLeakAwareByteBuf(ByteBuf wrapped, ByteBuf trackedByteBuf, ResourceLeakTracker<ByteBuf> leak) AdvancedLeakAwareByteBuf(ByteBuf buf, ResourceLeakTracker<ByteBuf> leak) -
Method Summary
Modifier and TypeMethodDescriptionReturns a read-only version of this buffer.intbytesBefore(byte value) Locates the first occurrence of the specifiedvaluein this buffer.intbytesBefore(int length, byte value) Locates the first occurrence of the specifiedvaluein this buffer.intbytesBefore(int index, int length, byte value) Locates the first occurrence of the specifiedvaluein this buffer.capacity(int newCapacity) Adjusts the capacity of this buffer.copy()Returns a copy of this buffer's readable bytes.copy(int index, int length) Returns a copy of this buffer's sub-region.Discards the bytes between the 0th index andreaderIndex.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.Returns a buffer which shares the whole region of this buffer.ensureWritable(int minWritableBytes) Expands the bufferByteBuf.capacity()to make sure the number of writable bytes is equal to or greater than the specified value.intensureWritable(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.intforEachByte(int index, int length, ByteProcessor processor) Iterates over the specified area of this buffer with the specifiedprocessorin ascending order.intforEachByte(ByteProcessor processor) Iterates over the readable bytes of this buffer with the specifiedprocessorin ascending order.intforEachByteDesc(int index, int length, ByteProcessor processor) Iterates over the specified area of this buffer with the specifiedprocessorin descending order.intforEachByteDesc(ByteProcessor processor) Iterates over the readable bytes of this buffer with the specifiedprocessorin descending order.booleangetBoolean(int index) Gets a boolean at the specified absolute (@code index) in this buffer.bytegetByte(int index) Gets a byte at the specified absoluteindexin this buffer.getBytes(int index, byte[] dst) Transfers this buffer's data to the specified destination starting at the specified absoluteindex.getBytes(int index, byte[] dst, int dstIndex, int length) Transfers this buffer's data to the specified destination starting at the specified absoluteindex.Transfers this buffer's data to the specified destination starting at the specified absoluteindexuntil the destination becomes non-writable.Transfers this buffer's data to the specified destination starting at the specified absoluteindex.Transfers this buffer's data to the specified destination starting at the specified absoluteindex.getBytes(int index, OutputStream out, int length) Transfers this buffer's data to the specified stream starting at the specified absoluteindex.getBytes(int index, ByteBuffer dst) Transfers this buffer's data to the specified destination starting at the specified absoluteindexuntil the destination's position reaches its limit.intgetBytes(int index, FileChannel out, long position, int length) Transfers this buffer's data starting at the specified absoluteindexto the specified channel starting at the given file position.intgetBytes(int index, GatheringByteChannel out, int length) Transfers this buffer's data to the specified channel starting at the specified absoluteindex.chargetChar(int index) Gets a 2-byte UTF-16 character at the specified absoluteindexin this buffer.getCharSequence(int index, int length, Charset charset) Gets aCharSequencewith the given length at the given index.doublegetDouble(int index) Gets a 64-bit floating point number at the specified absoluteindexin this buffer.floatgetFloat(int index) Gets a 32-bit floating point number at the specified absoluteindexin this buffer.intgetInt(int index) Gets a 32-bit integer at the specified absoluteindexin this buffer.intgetIntLE(int index) Gets a 32-bit integer at the specified absoluteindexin this buffer with Little Endian Byte Order.longgetLong(int index) Gets a 64-bit long integer at the specified absoluteindexin this buffer.longgetLongLE(int index) Gets a 64-bit long integer at the specified absoluteindexin this buffer in Little Endian Byte Order.intgetMedium(int index) Gets a 24-bit medium integer at the specified absoluteindexin this buffer.intgetMediumLE(int index) Gets a 24-bit medium integer at the specified absoluteindexin this buffer in the Little Endian Byte Order.shortgetShort(int index) Gets a 16-bit short integer at the specified absoluteindexin this buffer.shortgetShortLE(int index) Gets a 16-bit short integer at the specified absoluteindexin this buffer in Little Endian Byte Order.shortgetUnsignedByte(int index) Gets an unsigned byte at the specified absoluteindexin this buffer.longgetUnsignedInt(int index) Gets an unsigned 32-bit integer at the specified absoluteindexin this buffer.longgetUnsignedIntLE(int index) Gets an unsigned 32-bit integer at the specified absoluteindexin this buffer in Little Endian Byte Order.intgetUnsignedMedium(int index) Gets an unsigned 24-bit medium integer at the specified absoluteindexin this buffer.intgetUnsignedMediumLE(int index) Gets an unsigned 24-bit medium integer at the specified absoluteindexin this buffer in Little Endian Byte Order.intgetUnsignedShort(int index) Gets an unsigned 16-bit short integer at the specified absoluteindexin this buffer.intgetUnsignedShortLE(int index) Gets an unsigned 16-bit short integer at the specified absoluteindexin this buffer in Little Endian Byte Order.intindexOf(int fromIndex, int toIndex, byte value) Locates the first occurrence of the specifiedvaluein this buffer.internalNioBuffer(int index, int length) Internal use only: Exposes the internal NIO buffer.protected AdvancedLeakAwareByteBufnewLeakAwareByteBuf(ByteBuf buf, ByteBuf trackedByteBuf, ResourceLeakTracker<ByteBuf> leakTracker) Exposes this buffer's readable bytes as an NIOByteBuffer.nioBuffer(int index, int length) Exposes this buffer's sub-region as an NIOByteBuffer.intReturns the maximum number of NIOByteBuffers that consist this buffer.Exposes this buffer's readable bytes as an NIOByteBuffer's.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.Returns a buffer with the specifiedendiannesswhich shares the whole region, indexes, and marks of this buffer.booleanGets a boolean at the currentreaderIndexand increases thereaderIndexby1in this buffer.bytereadByte()Gets a byte at the currentreaderIndexand increases thereaderIndexby1in this buffer.readBytes(byte[] dst) Transfers this buffer's data to the specified destination starting at the currentreaderIndexand increases thereaderIndexby the number of the transferred bytes (=dst.length).readBytes(byte[] dst, int dstIndex, int length) Transfers this buffer's data to the specified destination starting at the currentreaderIndexand increases thereaderIndexby the number of the transferred bytes (=length).readBytes(int length) Transfers this buffer's data to a newly created buffer starting at the currentreaderIndexand increases thereaderIndexby the number of the transferred bytes (=length).Transfers this buffer's data to the specified destination starting at the currentreaderIndexuntil the destination becomes non-writable, and increases thereaderIndexby the number of the transferred bytes.Transfers this buffer's data to the specified destination starting at the currentreaderIndexand increases thereaderIndexby the number of the transferred bytes (=length).Transfers this buffer's data to the specified destination starting at the currentreaderIndexand increases thereaderIndexby the number of the transferred bytes (=length).readBytes(OutputStream out, int length) Transfers this buffer's data to the specified stream starting at the currentreaderIndex.readBytes(ByteBuffer dst) Transfers this buffer's data to the specified destination starting at the currentreaderIndexuntil the destination's position reaches its limit, and increases thereaderIndexby the number of the transferred bytes.intreadBytes(FileChannel out, long position, int length) Transfers this buffer's data starting at the currentreaderIndexto the specified channel starting at the given file position.intreadBytes(GatheringByteChannel out, int length) Transfers this buffer's data to the specified stream starting at the currentreaderIndex.charreadChar()Gets a 2-byte UTF-16 character at the currentreaderIndexand increases thereaderIndexby2in this buffer.readCharSequence(int length, Charset charset) Gets aCharSequencewith the given length at the currentreaderIndexand increases thereaderIndexby the given length.doubleGets a 64-bit floating point number at the currentreaderIndexand increases thereaderIndexby8in this buffer.floatGets a 32-bit floating point number at the currentreaderIndexand increases thereaderIndexby4in this buffer.intreadInt()Gets a 32-bit integer at the currentreaderIndexand increases thereaderIndexby4in this buffer.intGets a 32-bit integer at the currentreaderIndexin the Little Endian Byte Order and increases thereaderIndexby4in this buffer.longreadLong()Gets a 64-bit integer at the currentreaderIndexand increases thereaderIndexby8in this buffer.longGets a 64-bit integer at the currentreaderIndexin the Little Endian Byte Order and increases thereaderIndexby8in this buffer.intGets a 24-bit medium integer at the currentreaderIndexand increases thereaderIndexby3in this buffer.intGets a 24-bit medium integer at the currentreaderIndexin the Little Endian Byte Order and increases thereaderIndexby3in this buffer.readRetainedSlice(int length) Returns a new retained slice of this buffer's sub-region starting at the currentreaderIndexand increases thereaderIndexby the size of the new slice (=length).shortGets a 16-bit short integer at the currentreaderIndexand increases thereaderIndexby2in this buffer.shortGets a 16-bit short integer at the currentreaderIndexin the Little Endian Byte Order and increases thereaderIndexby2in this buffer.readSlice(int length) Returns a new slice of this buffer's sub-region starting at the currentreaderIndexand increases thereaderIndexby the size of the new slice (=length).shortGets an unsigned byte at the currentreaderIndexand increases thereaderIndexby1in this buffer.longGets an unsigned 32-bit integer at the currentreaderIndexand increases thereaderIndexby4in this buffer.longGets an unsigned 32-bit integer at the currentreaderIndexin the Little Endian Byte Order and increases thereaderIndexby4in this buffer.intGets an unsigned 24-bit medium integer at the currentreaderIndexand increases thereaderIndexby3in this buffer.intGets an unsigned 24-bit medium integer at the currentreaderIndexin the Little Endian Byte Order and increases thereaderIndexby3in this buffer.intGets an unsigned 16-bit short integer at the currentreaderIndexand increases thereaderIndexby2in this buffer.intGets an unsigned 16-bit short integer at the currentreaderIndexin the Little Endian Byte Order and increases thereaderIndexby2in this buffer.(package private) static voidbooleanrelease()Decreases the reference count by1and deallocates this object if the reference count reaches at0.booleanrelease(int decrement) Decreases the reference count by the specifieddecrementand deallocates this object if the reference count reaches at0.retain()Increases the reference count by1.retain(int increment) Increases the reference count by the specifiedincrement.Returns a retained buffer which shares the whole region of this buffer.Returns a retained slice of this buffer's readable bytes.retainedSlice(int index, int length) Returns a retained slice of this buffer's sub-region.setBoolean(int index, boolean value) Sets the specified boolean at the specified absoluteindexin this buffer.setByte(int index, int value) Sets the specified byte at the specified absoluteindexin this buffer.setBytes(int index, byte[] src) Transfers the specified source array's data to this buffer starting at the specified absoluteindex.setBytes(int index, byte[] src, int srcIndex, int length) Transfers the specified source array's data to this buffer starting at the specified absoluteindex.Transfers the specified source buffer's data to this buffer starting at the specified absoluteindexuntil the source buffer becomes unreadable.Transfers the specified source buffer's data to this buffer starting at the specified absoluteindex.Transfers the specified source buffer's data to this buffer starting at the specified absoluteindex.intsetBytes(int index, InputStream in, int length) Transfers the content of the specified source stream to this buffer starting at the specified absoluteindex.setBytes(int index, ByteBuffer src) Transfers the specified source buffer's data to this buffer starting at the specified absoluteindexuntil the source buffer's position reaches its limit.intsetBytes(int index, 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.intsetBytes(int index, ScatteringByteChannel in, int length) Transfers the content of the specified source channel to this buffer starting at the specified absoluteindex.setChar(int index, int value) Sets the specified 2-byte UTF-16 character at the specified absoluteindexin this buffer.intsetCharSequence(int index, CharSequence sequence, Charset charset) Writes the specifiedCharSequenceat the givenindex.setDouble(int index, double value) Sets the specified 64-bit floating-point number at the specified absoluteindexin this buffer.setFloat(int index, float value) Sets the specified 32-bit floating-point number at the specified absoluteindexin this buffer.setInt(int index, int value) Sets the specified 32-bit integer at the specified absoluteindexin this buffer.setIntLE(int index, int value) Sets the specified 32-bit integer at the specified absoluteindexin this buffer with Little Endian byte order .setLong(int index, long value) Sets the specified 64-bit long integer at the specified absoluteindexin this buffer.setLongLE(int index, long value) Sets the specified 64-bit long integer at the specified absoluteindexin this buffer in Little Endian Byte Order.setMedium(int index, int value) Sets the specified 24-bit medium integer at the specified absoluteindexin this buffer.setMediumLE(int index, int value) Sets the specified 24-bit medium integer at the specified absoluteindexin this buffer in the Little Endian Byte Order.setShort(int index, int value) Sets the specified 16-bit short integer at the specified absoluteindexin this buffer.setShortLE(int index, int value) Sets the specified 16-bit short integer at the specified absoluteindexin this buffer with the Little Endian Byte Order.setZero(int index, int length) Fills this buffer with NUL (0x00) starting at the specified absoluteindex.skipBytes(int length) Increases the currentreaderIndexby the specifiedlengthin this buffer.slice()Returns a slice of this buffer's readable bytes.slice(int index, int length) Returns a slice of this buffer's sub-region.Decodes this buffer's sub-region into a string with the specified character set.Decodes this buffer's readable bytes into a string with the specified character set name.touch()Records the current access location of this object for debugging purposes.Records the current access location of this object with an additional arbitrary information for debugging purposes.writeBoolean(boolean value) Sets the specified boolean at the currentwriterIndexand increases thewriterIndexby1in this buffer.writeByte(int value) Sets the specified byte at the currentwriterIndexand increases thewriterIndexby1in this buffer.writeBytes(byte[] src) Transfers the specified source array's data to this buffer starting at the currentwriterIndexand increases thewriterIndexby the number of the transferred bytes (=src.length).writeBytes(byte[] src, int srcIndex, int length) Transfers the specified source array's data to this buffer starting at the currentwriterIndexand increases thewriterIndexby the number of the transferred bytes (=length).writeBytes(ByteBuf src) Transfers the specified source buffer's data to this buffer starting at the currentwriterIndexuntil the source buffer becomes unreadable, and increases thewriterIndexby the number of the transferred bytes.writeBytes(ByteBuf src, int length) Transfers the specified source buffer's data to this buffer starting at the currentwriterIndexand increases thewriterIndexby the number of the transferred bytes (=length).writeBytes(ByteBuf src, int srcIndex, int length) Transfers the specified source buffer's data to this buffer starting at the currentwriterIndexand increases thewriterIndexby the number of the transferred bytes (=length).intwriteBytes(InputStream in, int length) Transfers the content of the specified stream to this buffer starting at the currentwriterIndexand increases thewriterIndexby the number of the transferred bytes.writeBytes(ByteBuffer src) Transfers the specified source buffer's data to this buffer starting at the currentwriterIndexuntil the source buffer's position reaches its limit, and increases thewriterIndexby the number of the transferred bytes.intwriteBytes(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 currentwriterIndexand increases thewriterIndexby the number of the transferred bytes.intwriteBytes(ScatteringByteChannel in, int length) Transfers the content of the specified channel to this buffer starting at the currentwriterIndexand increases thewriterIndexby the number of the transferred bytes.writeChar(int value) Sets the specified 2-byte UTF-16 character at the currentwriterIndexand increases thewriterIndexby2in this buffer.intwriteCharSequence(CharSequence sequence, Charset charset) Writes the specifiedCharSequenceat the currentwriterIndexand increases thewriterIndexby the written bytes.writeDouble(double value) Sets the specified 64-bit floating point number at the currentwriterIndexand increases thewriterIndexby8in this buffer.writeFloat(float value) Sets the specified 32-bit floating point number at the currentwriterIndexand increases thewriterIndexby4in this buffer.writeInt(int value) Sets the specified 32-bit integer at the currentwriterIndexand increases thewriterIndexby4in this buffer.writeIntLE(int value) Sets the specified 32-bit integer at the currentwriterIndexin the Little Endian Byte Order and increases thewriterIndexby4in this buffer.writeLong(long value) Sets the specified 64-bit long integer at the currentwriterIndexand increases thewriterIndexby8in this buffer.writeLongLE(long value) Sets the specified 64-bit long integer at the currentwriterIndexin the Little Endian Byte Order and increases thewriterIndexby8in this buffer.writeMedium(int value) Sets the specified 24-bit medium integer at the currentwriterIndexand increases thewriterIndexby3in this buffer.writeMediumLE(int value) Sets the specified 24-bit medium integer at the currentwriterIndexin the Little Endian Byte Order and increases thewriterIndexby3in this buffer.writeShort(int value) Sets the specified 16-bit short integer at the currentwriterIndexand increases thewriterIndexby2in this buffer.writeShortLE(int value) Sets the specified 16-bit short integer in the Little Endian Byte Order at the currentwriterIndexand increases thewriterIndexby2in this buffer.writeZero(int length) Fills this buffer with NUL (0x00) starting at the currentwriterIndexand increases thewriterIndexby 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, writerIndexMethods inherited from class io.netty.buffer.ByteBuf
asByteBuf, getDoubleLE, getFloatLE, readDoubleLE, readFloatLE, setDoubleLE, setFloatLE, writeDoubleLE, writeFloatLE
-
Field Details
-
PROP_ACQUIRE_AND_RELEASE_ONLY
- See Also:
-
ACQUIRE_AND_RELEASE_ONLY
private static final boolean ACQUIRE_AND_RELEASE_ONLY -
logger
-
-
Constructor Details
-
AdvancedLeakAwareByteBuf
AdvancedLeakAwareByteBuf(ByteBuf buf, ResourceLeakTracker<ByteBuf> leak) -
AdvancedLeakAwareByteBuf
AdvancedLeakAwareByteBuf(ByteBuf wrapped, ByteBuf trackedByteBuf, ResourceLeakTracker<ByteBuf> leak)
-
-
Method Details
-
recordLeakNonRefCountingOperation
-
order
Description copied from class:ByteBufReturns a buffer with the specifiedendiannesswhich 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 specifiedendiannessis identical to this buffer's byte order, this method can returnthis. This method does not modifyreaderIndexorwriterIndexof this buffer.- Overrides:
orderin classSimpleLeakAwareByteBuf
-
slice
Description copied from class:ByteBufReturns 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 modifyreaderIndexorwriterIndexof this buffer.Also be aware that this method will NOT call
ByteBuf.retain()and so the reference count will NOT be increased.- Overrides:
slicein classSimpleLeakAwareByteBuf
-
slice
Description copied from class:ByteBufReturns 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 modifyreaderIndexorwriterIndexof this buffer.Also be aware that this method will NOT call
ByteBuf.retain()and so the reference count will NOT be increased.- Overrides:
slicein classSimpleLeakAwareByteBuf
-
retainedSlice
Description copied from class:ByteBufReturns 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 modifyreaderIndexorwriterIndexof 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:
retainedSlicein classSimpleLeakAwareByteBuf
-
retainedSlice
Description copied from class:ByteBufReturns 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 modifyreaderIndexorwriterIndexof 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:
retainedSlicein classSimpleLeakAwareByteBuf
-
retainedDuplicate
Description copied from class:ByteBufReturns 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 modifyreaderIndexorwriterIndexof 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:
retainedDuplicatein classSimpleLeakAwareByteBuf
-
readRetainedSlice
Description copied from class:ByteBufReturns a new retained slice of this buffer's sub-region starting at the currentreaderIndexand increases thereaderIndexby 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:
readRetainedSlicein classSimpleLeakAwareByteBuf- Parameters:
length- the size of the new slice- Returns:
- the newly created slice
-
duplicate
Description copied from class:ByteBufReturns 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 modifyreaderIndexorwriterIndexof 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:
duplicatein 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
Description copied from class:ByteBufReturns a new slice of this buffer's sub-region starting at the currentreaderIndexand increases thereaderIndexby 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:
readSlicein classSimpleLeakAwareByteBuf- Parameters:
length- the size of the new slice- Returns:
- the newly created slice
-
discardReadBytes
Description copied from class:ByteBufDiscards the bytes between the 0th index andreaderIndex. It moves the bytes betweenreaderIndexandwriterIndexto the 0th index, and setsreaderIndexandwriterIndexto0andoldWriterIndex - oldReaderIndexrespectively.Please refer to the class documentation for more detailed explanation.
- Overrides:
discardReadBytesin classWrappedByteBuf
-
discardSomeReadBytes
Description copied from class:ByteBufSimilar 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:
discardSomeReadBytesin classWrappedByteBuf
-
ensureWritable
Description copied from class:ByteBufExpands 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:
ensureWritablein classWrappedByteBuf- Parameters:
minWritableBytes- the expected minimum number of writable bytes- See Also:
-
ensureWritable
public int ensureWritable(int minWritableBytes, boolean force) Description copied from class:ByteBufExpands 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:
ensureWritablein 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:
0if the buffer has enough writable bytes, and its capacity is unchanged.1if the buffer does not have enough bytes, and its capacity is unchanged.2if the buffer has enough writable bytes, and its capacity has been increased.3if 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:ByteBufGets a boolean at the specified absolute (@code index) in this buffer. This method does not modify thereaderIndexorwriterIndexof this buffer.- Overrides:
getBooleanin classWrappedByteBuf
-
getByte
public byte getByte(int index) Description copied from class:ByteBufGets a byte at the specified absoluteindexin this buffer. This method does not modifyreaderIndexorwriterIndexof this buffer.- Overrides:
getBytein classWrappedByteBuf
-
getUnsignedByte
public short getUnsignedByte(int index) Description copied from class:ByteBufGets an unsigned byte at the specified absoluteindexin this buffer. This method does not modifyreaderIndexorwriterIndexof this buffer.- Overrides:
getUnsignedBytein classWrappedByteBuf
-
getShort
public short getShort(int index) Description copied from class:ByteBufGets a 16-bit short integer at the specified absoluteindexin this buffer. This method does not modifyreaderIndexorwriterIndexof this buffer.- Overrides:
getShortin classWrappedByteBuf
-
getUnsignedShort
public int getUnsignedShort(int index) Description copied from class:ByteBufGets an unsigned 16-bit short integer at the specified absoluteindexin this buffer. This method does not modifyreaderIndexorwriterIndexof this buffer.- Overrides:
getUnsignedShortin classWrappedByteBuf
-
getMedium
public int getMedium(int index) Description copied from class:ByteBufGets a 24-bit medium integer at the specified absoluteindexin this buffer. This method does not modifyreaderIndexorwriterIndexof this buffer.- Overrides:
getMediumin classWrappedByteBuf
-
getUnsignedMedium
public int getUnsignedMedium(int index) Description copied from class:ByteBufGets an unsigned 24-bit medium integer at the specified absoluteindexin this buffer. This method does not modifyreaderIndexorwriterIndexof this buffer.- Overrides:
getUnsignedMediumin classWrappedByteBuf
-
getInt
public int getInt(int index) Description copied from class:ByteBufGets a 32-bit integer at the specified absoluteindexin this buffer. This method does not modifyreaderIndexorwriterIndexof this buffer.- Overrides:
getIntin classWrappedByteBuf
-
getUnsignedInt
public long getUnsignedInt(int index) Description copied from class:ByteBufGets an unsigned 32-bit integer at the specified absoluteindexin this buffer. This method does not modifyreaderIndexorwriterIndexof this buffer.- Overrides:
getUnsignedIntin classWrappedByteBuf
-
getLong
public long getLong(int index) Description copied from class:ByteBufGets a 64-bit long integer at the specified absoluteindexin this buffer. This method does not modifyreaderIndexorwriterIndexof this buffer.- Overrides:
getLongin classWrappedByteBuf
-
getChar
public char getChar(int index) Description copied from class:ByteBufGets a 2-byte UTF-16 character at the specified absoluteindexin this buffer. This method does not modifyreaderIndexorwriterIndexof this buffer.- Overrides:
getCharin classWrappedByteBuf
-
getFloat
public float getFloat(int index) Description copied from class:ByteBufGets a 32-bit floating point number at the specified absoluteindexin this buffer. This method does not modifyreaderIndexorwriterIndexof this buffer.- Overrides:
getFloatin classWrappedByteBuf
-
getDouble
public double getDouble(int index) Description copied from class:ByteBufGets a 64-bit floating point number at the specified absoluteindexin this buffer. This method does not modifyreaderIndexorwriterIndexof this buffer.- Overrides:
getDoublein classWrappedByteBuf
-
getBytes
Description copied from class:ByteBufTransfers this buffer's data to the specified destination starting at the specified absoluteindexuntil the destination becomes non-writable. This method is basically same withByteBuf.getBytes(int, ByteBuf, int, int), except that this method increases thewriterIndexof the destination by the number of the transferred bytes whileByteBuf.getBytes(int, ByteBuf, int, int)does not. This method does not modifyreaderIndexorwriterIndexof the source buffer (i.e.this).- Overrides:
getBytesin classWrappedByteBuf
-
getBytes
Description copied from class:ByteBufTransfers 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 thewriterIndexof the destination by the number of the transferred bytes whileByteBuf.getBytes(int, ByteBuf, int, int)does not. This method does not modifyreaderIndexorwriterIndexof the source buffer (i.e.this).- Overrides:
getBytesin classWrappedByteBuf- Parameters:
length- the number of bytes to transfer
-
getBytes
Description copied from class:ByteBufTransfers this buffer's data to the specified destination starting at the specified absoluteindex. This method does not modifyreaderIndexorwriterIndexof both the source (i.e.this) and the destination.- Overrides:
getBytesin classWrappedByteBuf- Parameters:
dstIndex- the first index of the destinationlength- the number of bytes to transfer
-
getBytes
Description copied from class:ByteBufTransfers this buffer's data to the specified destination starting at the specified absoluteindex. This method does not modifyreaderIndexorwriterIndexof this buffer- Overrides:
getBytesin classWrappedByteBuf
-
getBytes
Description copied from class:ByteBufTransfers this buffer's data to the specified destination starting at the specified absoluteindex. This method does not modifyreaderIndexorwriterIndexof this buffer.- Overrides:
getBytesin classWrappedByteBuf- Parameters:
dstIndex- the first index of the destinationlength- the number of bytes to transfer
-
getBytes
Description copied from class:ByteBufTransfers this buffer's data to the specified destination starting at the specified absoluteindexuntil the destination's position reaches its limit. This method does not modifyreaderIndexorwriterIndexof this buffer while the destination'spositionwill be increased.- Overrides:
getBytesin classWrappedByteBuf
-
getBytes
Description copied from class:ByteBufTransfers this buffer's data to the specified stream starting at the specified absoluteindex. This method does not modifyreaderIndexorwriterIndexof this buffer.- Overrides:
getBytesin classWrappedByteBuf- Parameters:
length- the number of bytes to transfer- Throws:
IOException- if the specified stream threw an exception during I/O
-
getBytes
Description copied from class:ByteBufTransfers this buffer's data to the specified channel starting at the specified absoluteindex. This method does not modifyreaderIndexorwriterIndexof this buffer.- Overrides:
getBytesin classWrappedByteBuf- Parameters:
length- the maximum number of bytes to transfer- Returns:
- the actual number of bytes written out to the specified channel
- Throws:
IOException- if the specified channel threw an exception during I/O
-
getCharSequence
Description copied from class:ByteBufGets aCharSequencewith the given length at the given index.- Overrides:
getCharSequencein classWrappedByteBuf- Parameters:
length- the length to readcharset- that should be used- Returns:
- the sequence
-
setBoolean
Description copied from class:ByteBufSets the specified boolean at the specified absoluteindexin this buffer. This method does not modifyreaderIndexorwriterIndexof this buffer.- Overrides:
setBooleanin classWrappedByteBuf
-
setByte
Description copied from class:ByteBufSets the specified byte at the specified absoluteindexin this buffer. The 24 high-order bits of the specified value are ignored. This method does not modifyreaderIndexorwriterIndexof this buffer.- Overrides:
setBytein classWrappedByteBuf
-
setShort
Description copied from class:ByteBufSets the specified 16-bit short integer at the specified absoluteindexin this buffer. The 16 high-order bits of the specified value are ignored. This method does not modifyreaderIndexorwriterIndexof this buffer.- Overrides:
setShortin classWrappedByteBuf
-
setMedium
Description copied from class:ByteBufSets the specified 24-bit medium integer at the specified absoluteindexin this buffer. Please note that the most significant byte is ignored in the specified value. This method does not modifyreaderIndexorwriterIndexof this buffer.- Overrides:
setMediumin classWrappedByteBuf
-
setInt
Description copied from class:ByteBufSets the specified 32-bit integer at the specified absoluteindexin this buffer. This method does not modifyreaderIndexorwriterIndexof this buffer.- Overrides:
setIntin classWrappedByteBuf
-
setLong
Description copied from class:ByteBufSets the specified 64-bit long integer at the specified absoluteindexin this buffer. This method does not modifyreaderIndexorwriterIndexof this buffer.- Overrides:
setLongin classWrappedByteBuf
-
setChar
Description copied from class:ByteBufSets the specified 2-byte UTF-16 character at the specified absoluteindexin this buffer. The 16 high-order bits of the specified value are ignored. This method does not modifyreaderIndexorwriterIndexof this buffer.- Overrides:
setCharin classWrappedByteBuf
-
setFloat
Description copied from class:ByteBufSets the specified 32-bit floating-point number at the specified absoluteindexin this buffer. This method does not modifyreaderIndexorwriterIndexof this buffer.- Overrides:
setFloatin classWrappedByteBuf
-
setDouble
Description copied from class:ByteBufSets the specified 64-bit floating-point number at the specified absoluteindexin this buffer. This method does not modifyreaderIndexorwriterIndexof this buffer.- Overrides:
setDoublein classWrappedByteBuf
-
setBytes
Description copied from class:ByteBufTransfers the specified source buffer's data to this buffer starting at the specified absoluteindexuntil the source buffer becomes unreadable. This method is basically same withByteBuf.setBytes(int, ByteBuf, int, int), except that this method increases thereaderIndexof the source buffer by the number of the transferred bytes whileByteBuf.setBytes(int, ByteBuf, int, int)does not. This method does not modifyreaderIndexorwriterIndexof this buffer (i.e.this).- Overrides:
setBytesin classWrappedByteBuf
-
setBytes
Description copied from class:ByteBufTransfers 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 thereaderIndexof the source buffer by the number of the transferred bytes whileByteBuf.setBytes(int, ByteBuf, int, int)does not. This method does not modifyreaderIndexorwriterIndexof this buffer (i.e.this).- Overrides:
setBytesin classWrappedByteBuf- Parameters:
length- the number of bytes to transfer
-
setBytes
Description copied from class:ByteBufTransfers the specified source buffer's data to this buffer starting at the specified absoluteindex. This method does not modifyreaderIndexorwriterIndexof both the source (i.e.this) and the destination.- Overrides:
setBytesin classWrappedByteBuf- Parameters:
srcIndex- the first index of the sourcelength- the number of bytes to transfer
-
setBytes
Description copied from class:ByteBufTransfers the specified source array's data to this buffer starting at the specified absoluteindex. This method does not modifyreaderIndexorwriterIndexof this buffer.- Overrides:
setBytesin classWrappedByteBuf
-
setBytes
Description copied from class:ByteBufTransfers the specified source array's data to this buffer starting at the specified absoluteindex. This method does not modifyreaderIndexorwriterIndexof this buffer.- Overrides:
setBytesin classWrappedByteBuf
-
setBytes
Description copied from class:ByteBufTransfers the specified source buffer's data to this buffer starting at the specified absoluteindexuntil the source buffer's position reaches its limit. This method does not modifyreaderIndexorwriterIndexof this buffer.- Overrides:
setBytesin classWrappedByteBuf
-
setBytes
Description copied from class:ByteBufTransfers the content of the specified source stream to this buffer starting at the specified absoluteindex. This method does not modifyreaderIndexorwriterIndexof this buffer.- Overrides:
setBytesin classWrappedByteBuf- Parameters:
length- the number of bytes to transfer- Returns:
- the actual number of bytes read in from the specified channel.
-1if the specifiedInputStreamreached EOF. - Throws:
IOException- if the specified stream threw an exception during I/O
-
setBytes
Description copied from class:ByteBufTransfers the content of the specified source channel to this buffer starting at the specified absoluteindex. This method does not modifyreaderIndexorwriterIndexof this buffer.- Overrides:
setBytesin classWrappedByteBuf- Parameters:
length- the maximum number of bytes to transfer- Returns:
- the actual number of bytes read in from the specified channel.
-1if the specified channel is closed or it reached EOF. - Throws:
IOException- if the specified channel threw an exception during I/O
-
setZero
Description copied from class:ByteBufFills this buffer with NUL (0x00) starting at the specified absoluteindex. This method does not modifyreaderIndexorwriterIndexof this buffer.- Overrides:
setZeroin classWrappedByteBuf- Parameters:
length- the number of NULs to write to the buffer
-
setCharSequence
Description copied from class:ByteBufWrites the specifiedCharSequenceat the givenindex. ThewriterIndexis not modified by this method.- Overrides:
setCharSequencein 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:ByteBufGets a boolean at the currentreaderIndexand increases thereaderIndexby1in this buffer.- Overrides:
readBooleanin classWrappedByteBuf
-
readByte
public byte readByte()Description copied from class:ByteBufGets a byte at the currentreaderIndexand increases thereaderIndexby1in this buffer.- Overrides:
readBytein classWrappedByteBuf
-
readUnsignedByte
public short readUnsignedByte()Description copied from class:ByteBufGets an unsigned byte at the currentreaderIndexand increases thereaderIndexby1in this buffer.- Overrides:
readUnsignedBytein classWrappedByteBuf
-
readShort
public short readShort()Description copied from class:ByteBufGets a 16-bit short integer at the currentreaderIndexand increases thereaderIndexby2in this buffer.- Overrides:
readShortin classWrappedByteBuf
-
readUnsignedShort
public int readUnsignedShort()Description copied from class:ByteBufGets an unsigned 16-bit short integer at the currentreaderIndexand increases thereaderIndexby2in this buffer.- Overrides:
readUnsignedShortin classWrappedByteBuf
-
readMedium
public int readMedium()Description copied from class:ByteBufGets a 24-bit medium integer at the currentreaderIndexand increases thereaderIndexby3in this buffer.- Overrides:
readMediumin classWrappedByteBuf
-
readUnsignedMedium
public int readUnsignedMedium()Description copied from class:ByteBufGets an unsigned 24-bit medium integer at the currentreaderIndexand increases thereaderIndexby3in this buffer.- Overrides:
readUnsignedMediumin classWrappedByteBuf
-
readInt
public int readInt()Description copied from class:ByteBufGets a 32-bit integer at the currentreaderIndexand increases thereaderIndexby4in this buffer.- Overrides:
readIntin classWrappedByteBuf
-
readUnsignedInt
public long readUnsignedInt()Description copied from class:ByteBufGets an unsigned 32-bit integer at the currentreaderIndexand increases thereaderIndexby4in this buffer.- Overrides:
readUnsignedIntin classWrappedByteBuf
-
readLong
public long readLong()Description copied from class:ByteBufGets a 64-bit integer at the currentreaderIndexand increases thereaderIndexby8in this buffer.- Overrides:
readLongin classWrappedByteBuf
-
readChar
public char readChar()Description copied from class:ByteBufGets a 2-byte UTF-16 character at the currentreaderIndexand increases thereaderIndexby2in this buffer.- Overrides:
readCharin classWrappedByteBuf
-
readFloat
public float readFloat()Description copied from class:ByteBufGets a 32-bit floating point number at the currentreaderIndexand increases thereaderIndexby4in this buffer.- Overrides:
readFloatin classWrappedByteBuf
-
readDouble
public double readDouble()Description copied from class:ByteBufGets a 64-bit floating point number at the currentreaderIndexand increases thereaderIndexby8in this buffer.- Overrides:
readDoublein classWrappedByteBuf
-
readBytes
Description copied from class:ByteBufTransfers this buffer's data to a newly created buffer starting at the currentreaderIndexand increases thereaderIndexby the number of the transferred bytes (=length). The returned buffer'sreaderIndexandwriterIndexare0andlengthrespectively.- Overrides:
readBytesin classWrappedByteBuf- Parameters:
length- the number of bytes to transfer- Returns:
- the newly created buffer which contains the transferred bytes
-
readBytes
Description copied from class:ByteBufTransfers this buffer's data to the specified destination starting at the currentreaderIndexuntil the destination becomes non-writable, and increases thereaderIndexby the number of the transferred bytes. This method is basically same withByteBuf.readBytes(ByteBuf, int, int), except that this method increases thewriterIndexof the destination by the number of the transferred bytes whileByteBuf.readBytes(ByteBuf, int, int)does not.- Overrides:
readBytesin classWrappedByteBuf
-
readBytes
Description copied from class:ByteBufTransfers this buffer's data to the specified destination starting at the currentreaderIndexand increases thereaderIndexby the number of the transferred bytes (=length). This method is basically same withByteBuf.readBytes(ByteBuf, int, int), except that this method increases thewriterIndexof the destination by the number of the transferred bytes (=length) whileByteBuf.readBytes(ByteBuf, int, int)does not.- Overrides:
readBytesin classWrappedByteBuf
-
readBytes
Description copied from class:ByteBufTransfers this buffer's data to the specified destination starting at the currentreaderIndexand increases thereaderIndexby the number of the transferred bytes (=length).- Overrides:
readBytesin classWrappedByteBuf- Parameters:
dstIndex- the first index of the destinationlength- the number of bytes to transfer
-
readBytes
Description copied from class:ByteBufTransfers this buffer's data to the specified destination starting at the currentreaderIndexand increases thereaderIndexby the number of the transferred bytes (=dst.length).- Overrides:
readBytesin classWrappedByteBuf
-
readBytes
Description copied from class:ByteBufTransfers this buffer's data to the specified destination starting at the currentreaderIndexand increases thereaderIndexby the number of the transferred bytes (=length).- Overrides:
readBytesin classWrappedByteBuf- Parameters:
dstIndex- the first index of the destinationlength- the number of bytes to transfer
-
readBytes
Description copied from class:ByteBufTransfers this buffer's data to the specified destination starting at the currentreaderIndexuntil the destination's position reaches its limit, and increases thereaderIndexby the number of the transferred bytes.- Overrides:
readBytesin classWrappedByteBuf
-
readBytes
Description copied from class:ByteBufTransfers this buffer's data to the specified stream starting at the currentreaderIndex.- Overrides:
readBytesin classWrappedByteBuf- Parameters:
length- the number of bytes to transfer- Throws:
IOException- if the specified stream threw an exception during I/O
-
readBytes
Description copied from class:ByteBufTransfers this buffer's data to the specified stream starting at the currentreaderIndex.- Overrides:
readBytesin classWrappedByteBuf- Parameters:
length- the maximum number of bytes to transfer- Returns:
- the actual number of bytes written out to the specified channel
- Throws:
IOException- if the specified channel threw an exception during I/O
-
readCharSequence
Description copied from class:ByteBufGets aCharSequencewith the given length at the currentreaderIndexand increases thereaderIndexby the given length.- Overrides:
readCharSequencein classWrappedByteBuf- Parameters:
length- the length to readcharset- that should be used- Returns:
- the sequence
-
skipBytes
Description copied from class:ByteBufIncreases the currentreaderIndexby the specifiedlengthin this buffer.- Overrides:
skipBytesin classWrappedByteBuf
-
writeBoolean
Description copied from class:ByteBufSets the specified boolean at the currentwriterIndexand increases thewriterIndexby1in this buffer. Ifthis.writableBytesis less than1,ByteBuf.ensureWritable(int)will be called in an attempt to expand capacity to accommodate.- Overrides:
writeBooleanin classWrappedByteBuf
-
writeByte
Description copied from class:ByteBufSets the specified byte at the currentwriterIndexand increases thewriterIndexby1in this buffer. The 24 high-order bits of the specified value are ignored. Ifthis.writableBytesis less than1,ByteBuf.ensureWritable(int)will be called in an attempt to expand capacity to accommodate.- Overrides:
writeBytein classWrappedByteBuf
-
writeShort
Description copied from class:ByteBufSets the specified 16-bit short integer at the currentwriterIndexand increases thewriterIndexby2in this buffer. The 16 high-order bits of the specified value are ignored. Ifthis.writableBytesis less than2,ByteBuf.ensureWritable(int)will be called in an attempt to expand capacity to accommodate.- Overrides:
writeShortin classWrappedByteBuf
-
writeMedium
Description copied from class:ByteBufSets the specified 24-bit medium integer at the currentwriterIndexand increases thewriterIndexby3in this buffer. Ifthis.writableBytesis less than3,ByteBuf.ensureWritable(int)will be called in an attempt to expand capacity to accommodate.- Overrides:
writeMediumin classWrappedByteBuf
-
writeInt
Description copied from class:ByteBufSets the specified 32-bit integer at the currentwriterIndexand increases thewriterIndexby4in this buffer. Ifthis.writableBytesis less than4,ByteBuf.ensureWritable(int)will be called in an attempt to expand capacity to accommodate.- Overrides:
writeIntin classWrappedByteBuf
-
writeLong
Description copied from class:ByteBufSets the specified 64-bit long integer at the currentwriterIndexand increases thewriterIndexby8in this buffer. Ifthis.writableBytesis less than8,ByteBuf.ensureWritable(int)will be called in an attempt to expand capacity to accommodate.- Overrides:
writeLongin classWrappedByteBuf
-
writeChar
Description copied from class:ByteBufSets the specified 2-byte UTF-16 character at the currentwriterIndexand increases thewriterIndexby2in this buffer. The 16 high-order bits of the specified value are ignored. Ifthis.writableBytesis less than2,ByteBuf.ensureWritable(int)will be called in an attempt to expand capacity to accommodate.- Overrides:
writeCharin classWrappedByteBuf
-
writeFloat
Description copied from class:ByteBufSets the specified 32-bit floating point number at the currentwriterIndexand increases thewriterIndexby4in this buffer. Ifthis.writableBytesis less than4,ByteBuf.ensureWritable(int)will be called in an attempt to expand capacity to accommodate.- Overrides:
writeFloatin classWrappedByteBuf
-
writeDouble
Description copied from class:ByteBufSets the specified 64-bit floating point number at the currentwriterIndexand increases thewriterIndexby8in this buffer. Ifthis.writableBytesis less than8,ByteBuf.ensureWritable(int)will be called in an attempt to expand capacity to accommodate.- Overrides:
writeDoublein classWrappedByteBuf
-
writeBytes
Description copied from class:ByteBufTransfers the specified source buffer's data to this buffer starting at the currentwriterIndexuntil the source buffer becomes unreadable, and increases thewriterIndexby the number of the transferred bytes. This method is basically same withByteBuf.writeBytes(ByteBuf, int, int), except that this method increases thereaderIndexof the source buffer by the number of the transferred bytes whileByteBuf.writeBytes(ByteBuf, int, int)does not. Ifthis.writableBytesis less thansrc.readableBytes,ByteBuf.ensureWritable(int)will be called in an attempt to expand capacity to accommodate.- Overrides:
writeBytesin classWrappedByteBuf
-
writeBytes
Description copied from class:ByteBufTransfers the specified source buffer's data to this buffer starting at the currentwriterIndexand increases thewriterIndexby the number of the transferred bytes (=length). This method is basically same withByteBuf.writeBytes(ByteBuf, int, int), except that this method increases thereaderIndexof the source buffer by the number of the transferred bytes (=length) whileByteBuf.writeBytes(ByteBuf, int, int)does not. Ifthis.writableBytesis less thanlength,ByteBuf.ensureWritable(int)will be called in an attempt to expand capacity to accommodate.- Overrides:
writeBytesin classWrappedByteBuf- Parameters:
length- the number of bytes to transfer
-
writeBytes
Description copied from class:ByteBufTransfers the specified source buffer's data to this buffer starting at the currentwriterIndexand increases thewriterIndexby the number of the transferred bytes (=length). Ifthis.writableBytesis less thanlength,ByteBuf.ensureWritable(int)will be called in an attempt to expand capacity to accommodate.- Overrides:
writeBytesin classWrappedByteBuf- Parameters:
srcIndex- the first index of the sourcelength- the number of bytes to transfer
-
writeBytes
Description copied from class:ByteBufTransfers the specified source array's data to this buffer starting at the currentwriterIndexand increases thewriterIndexby the number of the transferred bytes (=src.length). Ifthis.writableBytesis less thansrc.length,ByteBuf.ensureWritable(int)will be called in an attempt to expand capacity to accommodate.- Overrides:
writeBytesin classWrappedByteBuf
-
writeBytes
Description copied from class:ByteBufTransfers the specified source array's data to this buffer starting at the currentwriterIndexand increases thewriterIndexby the number of the transferred bytes (=length). Ifthis.writableBytesis less thanlength,ByteBuf.ensureWritable(int)will be called in an attempt to expand capacity to accommodate.- Overrides:
writeBytesin classWrappedByteBuf- Parameters:
srcIndex- the first index of the sourcelength- the number of bytes to transfer
-
writeBytes
Description copied from class:ByteBufTransfers the specified source buffer's data to this buffer starting at the currentwriterIndexuntil the source buffer's position reaches its limit, and increases thewriterIndexby the number of the transferred bytes. Ifthis.writableBytesis less thansrc.remaining(),ByteBuf.ensureWritable(int)will be called in an attempt to expand capacity to accommodate.- Overrides:
writeBytesin classWrappedByteBuf
-
writeBytes
Description copied from class:ByteBufTransfers the content of the specified stream to this buffer starting at the currentwriterIndexand increases thewriterIndexby the number of the transferred bytes. Ifthis.writableBytesis less thanlength,ByteBuf.ensureWritable(int)will be called in an attempt to expand capacity to accommodate.- Overrides:
writeBytesin classWrappedByteBuf- Parameters:
length- the number of bytes to transfer- Returns:
- the actual number of bytes read in from the specified channel.
-1if the specifiedInputStreamreached EOF. - Throws:
IOException- if the specified stream threw an exception during I/O
-
writeBytes
Description copied from class:ByteBufTransfers the content of the specified channel to this buffer starting at the currentwriterIndexand increases thewriterIndexby the number of the transferred bytes. Ifthis.writableBytesis less thanlength,ByteBuf.ensureWritable(int)will be called in an attempt to expand capacity to accommodate.- Overrides:
writeBytesin classWrappedByteBuf- Parameters:
length- the maximum number of bytes to transfer- Returns:
- the actual number of bytes read in from the specified channel.
-1if the specified channel is closed or it reached EOF. - Throws:
IOException- if the specified channel threw an exception during I/O
-
writeZero
Description copied from class:ByteBufFills this buffer with NUL (0x00) starting at the currentwriterIndexand increases thewriterIndexby the specifiedlength. Ifthis.writableBytesis less thanlength,ByteBuf.ensureWritable(int)will be called in an attempt to expand capacity to accommodate.- Overrides:
writeZeroin 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:ByteBufLocates the first occurrence of the specifiedvaluein this buffer. The search takes place from the specifiedfromIndex(inclusive) to the specifiedtoIndex(exclusive).If
fromIndexis 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
readerIndexorwriterIndexof this buffer.- Overrides:
indexOfin classWrappedByteBuf- Returns:
- the absolute index of the first occurrence if found.
-1otherwise.
-
bytesBefore
public int bytesBefore(byte value) Description copied from class:ByteBufLocates the first occurrence of the specifiedvaluein this buffer. The search takes place from the currentreaderIndex(inclusive) to the currentwriterIndex(exclusive).This method does not modify
readerIndexorwriterIndexof this buffer.- Overrides:
bytesBeforein classWrappedByteBuf- Returns:
- the number of bytes between the current
readerIndexand the first occurrence if found.-1otherwise.
-
bytesBefore
public int bytesBefore(int length, byte value) Description copied from class:ByteBufLocates the first occurrence of the specifiedvaluein this buffer. The search starts from the currentreaderIndex(inclusive) and lasts for the specifiedlength.This method does not modify
readerIndexorwriterIndexof this buffer.- Overrides:
bytesBeforein classWrappedByteBuf- Returns:
- the number of bytes between the current
readerIndexand the first occurrence if found.-1otherwise.
-
bytesBefore
public int bytesBefore(int index, int length, byte value) Description copied from class:ByteBufLocates the first occurrence of the specifiedvaluein this buffer. The search starts from the specifiedindex(inclusive) and lasts for the specifiedlength.This method does not modify
readerIndexorwriterIndexof this buffer.- Overrides:
bytesBeforein classWrappedByteBuf- Returns:
- the number of bytes between the specified
indexand the first occurrence if found.-1otherwise.
-
forEachByte
Description copied from class:ByteBufIterates over the readable bytes of this buffer with the specifiedprocessorin ascending order.- Overrides:
forEachBytein classWrappedByteBuf- Returns:
-1if the processor iterated to or beyond the end of the readable bytes. The last-visited index If theByteProcessor.process(byte)returnedfalse.
-
forEachByte
Description copied from class:ByteBufIterates over the specified area of this buffer with the specifiedprocessorin ascending order. (i.e.index,(index + 1), ..(index + length - 1))- Overrides:
forEachBytein classWrappedByteBuf- Returns:
-1if the processor iterated to or beyond the end of the specified area. The last-visited index If theByteProcessor.process(byte)returnedfalse.
-
forEachByteDesc
Description copied from class:ByteBufIterates over the readable bytes of this buffer with the specifiedprocessorin descending order.- Overrides:
forEachByteDescin classWrappedByteBuf- Returns:
-1if the processor iterated to or beyond the beginning of the readable bytes. The last-visited index If theByteProcessor.process(byte)returnedfalse.
-
forEachByteDesc
Description copied from class:ByteBufIterates over the specified area of this buffer with the specifiedprocessorin descending order. (i.e.(index + length - 1),(index + length - 2), ...index)- Overrides:
forEachByteDescin classWrappedByteBuf- Returns:
-1if the processor iterated to or beyond the beginning of the specified area. The last-visited index If theByteProcessor.process(byte)returnedfalse.
-
copy
Description copied from class:ByteBufReturns 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 modifyreaderIndexorwriterIndexof this buffer.- Overrides:
copyin classWrappedByteBuf
-
copy
Description copied from class:ByteBufReturns 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 modifyreaderIndexorwriterIndexof this buffer.- Overrides:
copyin classWrappedByteBuf
-
nioBufferCount
public int nioBufferCount()Description copied from class:ByteBufReturns the maximum number of NIOByteBuffers that consist this buffer. Note thatByteBuf.nioBuffers()orByteBuf.nioBuffers(int, int)might return a less number ofByteBuffers.- Overrides:
nioBufferCountin classWrappedByteBuf- Returns:
-1if this buffer has no underlyingByteBuffer. the number of the underlyingByteBuffers if this buffer has at least one underlyingByteBuffer. Note that this method does not return0to avoid confusion.- See Also:
-
nioBuffer
Description copied from class:ByteBufExposes 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 modifyreaderIndexorwriterIndexof 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:
nioBufferin classWrappedByteBuf- See Also:
-
nioBuffer
Description copied from class:ByteBufExposes 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 modifyreaderIndexorwriterIndexof 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:
nioBufferin classWrappedByteBuf- See Also:
-
nioBuffers
Description copied from class:ByteBufExposes 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 modifyreaderIndexorwriterIndexof 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:
nioBuffersin classWrappedByteBuf- See Also:
-
nioBuffers
Description copied from class:ByteBufExposes 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 modifyreaderIndexorwriterIndexof 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:
nioBuffersin classWrappedByteBuf- See Also:
-
internalNioBuffer
Description copied from class:ByteBufInternal use only: Exposes the internal NIO buffer.- Overrides:
internalNioBufferin classWrappedByteBuf
-
toString
Description copied from class:ByteBufDecodes 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 modifyreaderIndexorwriterIndexof this buffer.- Overrides:
toStringin classWrappedByteBuf
-
toString
Description copied from class:ByteBufDecodes this buffer's sub-region into a string with the specified character set. This method does not modifyreaderIndexorwriterIndexof this buffer.- Overrides:
toStringin classWrappedByteBuf
-
capacity
Description copied from class:ByteBufAdjusts the capacity of this buffer. If thenewCapacityis less than the current capacity, the content of this buffer is truncated. If thenewCapacityis greater than the current capacity, the buffer is appended with unspecified data whose length is(newCapacity - currentCapacity).- Overrides:
capacityin classWrappedByteBuf
-
getShortLE
public short getShortLE(int index) Description copied from class:ByteBufGets a 16-bit short integer at the specified absoluteindexin this buffer in Little Endian Byte Order. This method does not modifyreaderIndexorwriterIndexof this buffer.- Overrides:
getShortLEin classWrappedByteBuf
-
getUnsignedShortLE
public int getUnsignedShortLE(int index) Description copied from class:ByteBufGets an unsigned 16-bit short integer at the specified absoluteindexin this buffer in Little Endian Byte Order. This method does not modifyreaderIndexorwriterIndexof this buffer.- Overrides:
getUnsignedShortLEin classWrappedByteBuf
-
getMediumLE
public int getMediumLE(int index) Description copied from class:ByteBufGets a 24-bit medium integer at the specified absoluteindexin this buffer in the Little Endian Byte Order. This method does not modifyreaderIndexorwriterIndexof this buffer.- Overrides:
getMediumLEin classWrappedByteBuf
-
getUnsignedMediumLE
public int getUnsignedMediumLE(int index) Description copied from class:ByteBufGets an unsigned 24-bit medium integer at the specified absoluteindexin this buffer in Little Endian Byte Order. This method does not modifyreaderIndexorwriterIndexof this buffer.- Overrides:
getUnsignedMediumLEin classWrappedByteBuf
-
getIntLE
public int getIntLE(int index) Description copied from class:ByteBufGets a 32-bit integer at the specified absoluteindexin this buffer with Little Endian Byte Order. This method does not modifyreaderIndexorwriterIndexof this buffer.- Overrides:
getIntLEin classWrappedByteBuf
-
getUnsignedIntLE
public long getUnsignedIntLE(int index) Description copied from class:ByteBufGets an unsigned 32-bit integer at the specified absoluteindexin this buffer in Little Endian Byte Order. This method does not modifyreaderIndexorwriterIndexof this buffer.- Overrides:
getUnsignedIntLEin classWrappedByteBuf
-
getLongLE
public long getLongLE(int index) Description copied from class:ByteBufGets a 64-bit long integer at the specified absoluteindexin this buffer in Little Endian Byte Order. This method does not modifyreaderIndexorwriterIndexof this buffer.- Overrides:
getLongLEin classWrappedByteBuf
-
setShortLE
Description copied from class:ByteBufSets the specified 16-bit short integer at the specified absoluteindexin this buffer with the Little Endian Byte Order. The 16 high-order bits of the specified value are ignored. This method does not modifyreaderIndexorwriterIndexof this buffer.- Overrides:
setShortLEin classWrappedByteBuf
-
setIntLE
Description copied from class:ByteBufSets the specified 32-bit integer at the specified absoluteindexin this buffer with Little Endian byte order . This method does not modifyreaderIndexorwriterIndexof this buffer.- Overrides:
setIntLEin classWrappedByteBuf
-
setMediumLE
Description copied from class:ByteBufSets the specified 24-bit medium integer at the specified absoluteindexin 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 modifyreaderIndexorwriterIndexof this buffer.- Overrides:
setMediumLEin classWrappedByteBuf
-
setLongLE
Description copied from class:ByteBufSets the specified 64-bit long integer at the specified absoluteindexin this buffer in Little Endian Byte Order. This method does not modifyreaderIndexorwriterIndexof this buffer.- Overrides:
setLongLEin classWrappedByteBuf
-
readShortLE
public short readShortLE()Description copied from class:ByteBufGets a 16-bit short integer at the currentreaderIndexin the Little Endian Byte Order and increases thereaderIndexby2in this buffer.- Overrides:
readShortLEin classWrappedByteBuf
-
readUnsignedShortLE
public int readUnsignedShortLE()Description copied from class:ByteBufGets an unsigned 16-bit short integer at the currentreaderIndexin the Little Endian Byte Order and increases thereaderIndexby2in this buffer.- Overrides:
readUnsignedShortLEin classWrappedByteBuf
-
readMediumLE
public int readMediumLE()Description copied from class:ByteBufGets a 24-bit medium integer at the currentreaderIndexin the Little Endian Byte Order and increases thereaderIndexby3in this buffer.- Overrides:
readMediumLEin classWrappedByteBuf
-
readUnsignedMediumLE
public int readUnsignedMediumLE()Description copied from class:ByteBufGets an unsigned 24-bit medium integer at the currentreaderIndexin the Little Endian Byte Order and increases thereaderIndexby3in this buffer.- Overrides:
readUnsignedMediumLEin classWrappedByteBuf
-
readIntLE
public int readIntLE()Description copied from class:ByteBufGets a 32-bit integer at the currentreaderIndexin the Little Endian Byte Order and increases thereaderIndexby4in this buffer.- Overrides:
readIntLEin classWrappedByteBuf
-
readUnsignedIntLE
public long readUnsignedIntLE()Description copied from class:ByteBufGets an unsigned 32-bit integer at the currentreaderIndexin the Little Endian Byte Order and increases thereaderIndexby4in this buffer.- Overrides:
readUnsignedIntLEin classWrappedByteBuf
-
readLongLE
public long readLongLE()Description copied from class:ByteBufGets a 64-bit integer at the currentreaderIndexin the Little Endian Byte Order and increases thereaderIndexby8in this buffer.- Overrides:
readLongLEin classWrappedByteBuf
-
writeShortLE
Description copied from class:ByteBufSets the specified 16-bit short integer in the Little Endian Byte Order at the currentwriterIndexand increases thewriterIndexby2in this buffer. The 16 high-order bits of the specified value are ignored. Ifthis.writableBytesis less than2,ByteBuf.ensureWritable(int)will be called in an attempt to expand capacity to accommodate.- Overrides:
writeShortLEin classWrappedByteBuf
-
writeMediumLE
Description copied from class:ByteBufSets the specified 24-bit medium integer at the currentwriterIndexin the Little Endian Byte Order and increases thewriterIndexby3in this buffer. Ifthis.writableBytesis less than3,ByteBuf.ensureWritable(int)will be called in an attempt to expand capacity to accommodate.- Overrides:
writeMediumLEin classWrappedByteBuf
-
writeIntLE
Description copied from class:ByteBufSets the specified 32-bit integer at the currentwriterIndexin the Little Endian Byte Order and increases thewriterIndexby4in this buffer. Ifthis.writableBytesis less than4,ByteBuf.ensureWritable(int)will be called in an attempt to expand capacity to accommodate.- Overrides:
writeIntLEin classWrappedByteBuf
-
writeLongLE
Description copied from class:ByteBufSets the specified 64-bit long integer at the currentwriterIndexin the Little Endian Byte Order and increases thewriterIndexby8in this buffer. Ifthis.writableBytesis less than8,ByteBuf.ensureWritable(int)will be called in an attempt to expand capacity to accommodate.- Overrides:
writeLongLEin classWrappedByteBuf
-
writeCharSequence
Description copied from class:ByteBufWrites the specifiedCharSequenceat the currentwriterIndexand increases thewriterIndexby the written bytes. in this buffer. Ifthis.writableBytesis not large enough to write the whole sequence,ByteBuf.ensureWritable(int)will be called in an attempt to expand capacity to accommodate.- Overrides:
writeCharSequencein classWrappedByteBuf- Parameters:
sequence- to writecharset- that should be used- Returns:
- the written number of bytes
-
getBytes
Description copied from class:ByteBufTransfers this buffer's data starting at the specified absoluteindexto the specified channel starting at the given file position. This method does not modifyreaderIndexorwriterIndexof this buffer. This method does not modify the channel's position.- Overrides:
getBytesin classWrappedByteBuf- Parameters:
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:
IOException- if the specified channel threw an exception during I/O
-
setBytes
Description copied from class:ByteBufTransfers 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 modifyreaderIndexorwriterIndexof this buffer. This method does not modify the channel's position.- Overrides:
setBytesin classWrappedByteBuf- Parameters:
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.
-1if the specified channel is closed or it reached EOF. - Throws:
IOException- if the specified channel threw an exception during I/O
-
readBytes
Description copied from class:ByteBufTransfers this buffer's data starting at the currentreaderIndexto the specified channel starting at the given file position. This method does not modify the channel's position.- Overrides:
readBytesin classWrappedByteBuf- Parameters:
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:
IOException- if the specified channel threw an exception during I/O
-
writeBytes
Description copied from class:ByteBufTransfers the content of the specified channel starting at the given file position to this buffer starting at the currentwriterIndexand increases thewriterIndexby the number of the transferred bytes. This method does not modify the channel's position. Ifthis.writableBytesis less thanlength,ByteBuf.ensureWritable(int)will be called in an attempt to expand capacity to accommodate.- Overrides:
writeBytesin classWrappedByteBuf- Parameters:
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.
-1if the specified channel is closed or it reached EOF. - Throws:
IOException- if the specified channel threw an exception during I/O
-
asReadOnly
Description copied from class:ByteBufReturns a read-only version of this buffer.- Overrides:
asReadOnlyin classSimpleLeakAwareByteBuf
-
retain
Description copied from interface:ReferenceCountedIncreases the reference count by1.- Specified by:
retainin interfaceReferenceCounted- Overrides:
retainin classWrappedByteBuf
-
retain
Description copied from interface:ReferenceCountedIncreases the reference count by the specifiedincrement.- Specified by:
retainin interfaceReferenceCounted- Overrides:
retainin classWrappedByteBuf
-
release
public boolean release()Description copied from interface:ReferenceCountedDecreases the reference count by1and deallocates this object if the reference count reaches at0.- Specified by:
releasein interfaceReferenceCounted- Overrides:
releasein classSimpleLeakAwareByteBuf- Returns:
trueif and only if the reference count became0and this object has been deallocated
-
release
public boolean release(int decrement) Description copied from interface:ReferenceCountedDecreases the reference count by the specifieddecrementand deallocates this object if the reference count reaches at0.- Specified by:
releasein interfaceReferenceCounted- Overrides:
releasein classSimpleLeakAwareByteBuf- Returns:
trueif and only if the reference count became0and this object has been deallocated
-
touch
Description copied from interface:ReferenceCountedRecords 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:
touchin interfaceReferenceCounted- Overrides:
touchin classSimpleLeakAwareByteBuf
-
touch
Description copied from interface:ReferenceCountedRecords 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:
touchin interfaceReferenceCounted- Overrides:
touchin classSimpleLeakAwareByteBuf
-
newLeakAwareByteBuf
protected AdvancedLeakAwareByteBuf newLeakAwareByteBuf(ByteBuf buf, ByteBuf trackedByteBuf, ResourceLeakTracker<ByteBuf> leakTracker) - Overrides:
newLeakAwareByteBufin classSimpleLeakAwareByteBuf
-