public class DynamicChannelBuffer extends AbstractChannelBuffer
ChannelBuffers.dynamicBuffer(int) instead of
calling the constructor explicitly.| Constructor and Description |
|---|
DynamicChannelBuffer(ByteOrder endianness,
int estimatedLength) |
DynamicChannelBuffer(ByteOrder endianness,
int estimatedLength,
ChannelBufferFactory factory) |
DynamicChannelBuffer(int estimatedLength) |
| Modifier and Type | Method and Description |
|---|---|
byte[] |
array()
Returns the backing byte array of this buffer.
|
int |
arrayOffset()
Returns the offset of the first byte within the backing byte array of
this buffer.
|
int |
capacity()
Returns the number of bytes (octets) this buffer can contain.
|
ChannelBuffer |
copy(int index,
int length)
Returns a copy of this buffer's sub-region.
|
ChannelBuffer |
duplicate()
Returns a buffer which shares the whole region of this buffer.
|
void |
ensureWritableBytes(int minWritableBytes)
Makes sure the number of the writable bytes
is equal to or greater than the specified value.
|
ChannelBufferFactory |
factory()
Returns the factory which creates a
ChannelBuffer whose
type and default ByteOrder are same with this buffer. |
byte |
getByte(int index)
Gets a byte at the specified absolute
index in this buffer. |
void |
getBytes(int index,
byte[] dst,
int dstIndex,
int length)
Transfers this buffer's data to the specified destination starting at
the specified absolute
index. |
void |
getBytes(int index,
ByteBuffer dst)
Transfers this buffer's data to the specified destination starting at
the specified absolute
index until the destination's position
reaches its limit. |
void |
getBytes(int index,
ChannelBuffer dst,
int dstIndex,
int length)
Transfers this buffer's data to the specified destination starting at
the specified absolute
index. |
int |
getBytes(int index,
GatheringByteChannel out,
int length)
Transfers this buffer's data to the specified channel starting at the
specified absolute
index. |
void |
getBytes(int index,
OutputStream out,
int length)
Transfers this buffer's data to the specified stream starting at the
specified absolute
index. |
int |
getInt(int index)
Gets a 32-bit integer at the specified absolute
index in
this buffer. |
long |
getLong(int index)
Gets a 64-bit long integer at the specified absolute
index in
this buffer. |
short |
getShort(int index)
Gets a 16-bit short integer at the specified absolute
index in
this buffer. |
int |
getUnsignedMedium(int index)
Gets an unsigned 24-bit medium integer at the specified absolute
index in this buffer. |
boolean |
hasArray()
Returns
true if and only if this buffer has a backing byte array. |
boolean |
isDirect()
Returns
true if and only if this buffer is backed by an
NIO direct buffer. |
ByteOrder |
order()
Returns the endianness
of this buffer.
|
void |
setByte(int index,
int value)
Sets the specified byte at the specified absolute
index in this
buffer. |
void |
setBytes(int index,
byte[] src,
int srcIndex,
int length)
Transfers the specified source array's data to this buffer starting at
the specified absolute
index. |
void |
setBytes(int index,
ByteBuffer src)
Transfers the specified source buffer's data to this buffer starting at
the specified absolute
index until the source buffer's position
reaches its limit. |
void |
setBytes(int index,
ChannelBuffer src,
int srcIndex,
int length)
Transfers the specified source buffer's data to this buffer starting at
the specified absolute
index. |
int |
setBytes(int index,
InputStream in,
int length)
Transfers the content of the specified source stream to this buffer
starting at the specified absolute
index. |
int |
setBytes(int index,
ScatteringByteChannel in,
int length)
Transfers the content of the specified source channel to this buffer
starting at the specified absolute
index. |
void |
setInt(int index,
int value)
Sets the specified 32-bit integer at the specified absolute
index in this buffer. |
void |
setLong(int index,
long value)
Sets the specified 64-bit long integer at the specified absolute
index in this buffer. |
void |
setMedium(int index,
int value)
Sets the specified 24-bit medium integer at the specified absolute
index in this buffer. |
void |
setShort(int index,
int value)
Sets the specified 16-bit short integer at the specified absolute
index in this buffer. |
ChannelBuffer |
slice(int index,
int length)
Returns a slice of this buffer's sub-region.
|
ByteBuffer |
toByteBuffer(int index,
int length)
Converts this buffer's sub-region into a NIO buffer.
|
void |
writeByte(int value)
Sets the specified byte at the current
writerIndex
and increases the writerIndex by 1 in this buffer. |
void |
writeBytes(byte[] src,
int srcIndex,
int length)
Transfers the specified source array's data to this buffer starting at
the current
writerIndex and increases the writerIndex
by the number of the transferred bytes (= length). |
void |
writeBytes(ByteBuffer src)
Transfers the specified source buffer's data to this buffer starting at
the current
writerIndex until the source buffer's position
reaches its limit, and increases the writerIndex by the
number of the transferred bytes. |
void |
writeBytes(ChannelBuffer src,
int srcIndex,
int length)
Transfers the specified source buffer's data to this buffer starting at
the current
writerIndex and increases the writerIndex
by the number of the transferred bytes (= length). |
int |
writeBytes(InputStream in,
int length)
Transfers the content of the specified stream to this buffer
starting at the current
writerIndex and increases the
writerIndex by the number of the transferred bytes. |
int |
writeBytes(ScatteringByteChannel in,
int length)
Transfers the content of the specified channel to this buffer
starting at the current
writerIndex and increases the
writerIndex by the number of the transferred bytes. |
void |
writeInt(int value)
Sets the specified 32-bit integer at the current
writerIndex
and increases the writerIndex by 4 in this buffer. |
void |
writeLong(long value)
Sets the specified 64-bit long integer at the current
writerIndex and increases the writerIndex by 8
in this buffer. |
void |
writeMedium(int value)
Sets the specified 24-bit medium integer at the current
writerIndex and increases the writerIndex by 3
in this buffer. |
void |
writeShort(int value)
Sets the specified 16-bit short integer at the current
writerIndex and increases the writerIndex by 2
in this buffer. |
void |
writeZero(int length)
Fills this buffer with NUL (0x00) starting at the current
writerIndex and increases the writerIndex by the
specified length. |
bytesBefore, bytesBefore, bytesBefore, bytesBefore, bytesBefore, bytesBefore, checkReadableBytes, clear, compareTo, copy, discardReadBytes, equals, getBytes, getBytes, getBytes, getChar, getDouble, getFloat, getMedium, getUnsignedByte, getUnsignedInt, getUnsignedShort, hashCode, indexOf, indexOf, markReaderIndex, markWriterIndex, readable, readableBytes, readByte, readBytes, readBytes, readBytes, readBytes, readBytes, readBytes, readBytes, readBytes, readBytes, readChar, readDouble, readerIndex, readerIndex, readFloat, readInt, readLong, readMedium, readShort, readSlice, readUnsignedByte, readUnsignedInt, readUnsignedMedium, readUnsignedShort, resetReaderIndex, resetWriterIndex, setBytes, setBytes, setBytes, setChar, setDouble, setFloat, setIndex, setZero, skipBytes, slice, toByteBuffer, toByteBuffers, toByteBuffers, toString, toString, toString, writable, writableBytes, writeBytes, writeBytes, writeBytes, writeChar, writeDouble, writeFloat, writerIndex, writerIndexpublic DynamicChannelBuffer(int estimatedLength)
public DynamicChannelBuffer(ByteOrder endianness, int estimatedLength)
public DynamicChannelBuffer(ByteOrder endianness, int estimatedLength, ChannelBufferFactory factory)
public void ensureWritableBytes(int minWritableBytes)
ChannelBufferIndexOutOfBoundsException.writable bytes becomes equal to or greater
than the specified value. The expansion involves the reallocation of
the internal buffer and consequently memory copy.ensureWritableBytes in interface ChannelBufferensureWritableBytes in class AbstractChannelBufferminWritableBytes - the expected minimum number of writable bytespublic ChannelBufferFactory factory()
ChannelBufferChannelBuffer whose
type and default ByteOrder are same with this buffer.public ByteOrder order()
ChannelBufferpublic boolean isDirect()
ChannelBuffertrue if and only if this buffer is backed by an
NIO direct buffer.public int capacity()
ChannelBufferpublic boolean hasArray()
ChannelBuffertrue if and only if this buffer has a backing byte array.
If this method returns true, you can safely call ChannelBuffer.array() and
ChannelBuffer.arrayOffset().public byte[] array()
ChannelBufferpublic int arrayOffset()
ChannelBufferpublic byte getByte(int index)
ChannelBufferindex in this buffer.
This method does not modify readerIndex or writerIndex of
this buffer.public short getShort(int index)
ChannelBufferindex in
this buffer. This method does not modify readerIndex or
writerIndex of this buffer.public int getUnsignedMedium(int index)
ChannelBufferindex in this buffer. This method does not modify
readerIndex or writerIndex of this buffer.public int getInt(int index)
ChannelBufferindex in
this buffer. This method does not modify readerIndex or
writerIndex of this buffer.public long getLong(int index)
ChannelBufferindex in
this buffer. This method does not modify readerIndex or
writerIndex of this buffer.public void getBytes(int index,
byte[] dst,
int dstIndex,
int length)
ChannelBufferindex.
This method does not modify readerIndex or writerIndex
of this buffer.dstIndex - the first index of the destinationlength - the number of bytes to transferpublic void getBytes(int index,
ChannelBuffer dst,
int dstIndex,
int length)
ChannelBufferindex.
This method does not modify readerIndex or writerIndex
of both the source (i.e. this) and the destination.dstIndex - the first index of the destinationlength - the number of bytes to transferpublic void getBytes(int index,
ByteBuffer dst)
ChannelBufferindex until the destination's position
reaches its limit.
This method does not modify readerIndex or writerIndex of
this buffer while the destination's position will be increased.public int getBytes(int index,
GatheringByteChannel out,
int length)
throws IOException
ChannelBufferindex.
This method does not modify readerIndex or writerIndex of
this buffer.length - the maximum number of bytes to transferIOException - if the specified channel threw an exception during I/Opublic void getBytes(int index,
OutputStream out,
int length)
throws IOException
ChannelBufferindex.
This method does not modify readerIndex or writerIndex of
this buffer.length - the number of bytes to transferIOException - if the specified stream threw an exception during I/Opublic void setByte(int index,
int value)
ChannelBufferindex in this
buffer. The 24 high-order bits of the specified value are ignored.
This method does not modify readerIndex or writerIndex of
this buffer.public void setShort(int index,
int value)
ChannelBufferindex in this buffer. The 16 high-order bits of the specified
value are ignored.
This method does not modify readerIndex or writerIndex of
this buffer.public void setMedium(int index,
int value)
ChannelBufferindex in this buffer. Please note that the most significant
byte is ignored in the specified value.
This method does not modify readerIndex or writerIndex of
this buffer.public void setInt(int index,
int value)
ChannelBufferindex in this buffer.
This method does not modify readerIndex or writerIndex of
this buffer.public void setLong(int index,
long value)
ChannelBufferindex in this buffer.
This method does not modify readerIndex or writerIndex of
this buffer.public void setBytes(int index,
byte[] src,
int srcIndex,
int length)
ChannelBufferindex.
This method does not modify readerIndex or writerIndex of
this buffer.public void setBytes(int index,
ChannelBuffer src,
int srcIndex,
int length)
ChannelBufferindex.
This method does not modify readerIndex or writerIndex
of both the source (i.e. this) and the destination.srcIndex - the first index of the sourcelength - the number of bytes to transferpublic void setBytes(int index,
ByteBuffer src)
ChannelBufferindex until the source buffer's position
reaches its limit.
This method does not modify readerIndex or writerIndex of
this buffer.public int setBytes(int index,
InputStream in,
int length)
throws IOException
ChannelBufferindex.
This method does not modify readerIndex or writerIndex of
this buffer.length - the number of bytes to transfer-1 if the specified channel is closed.IOException - if the specified stream threw an exception during I/Opublic int setBytes(int index,
ScatteringByteChannel in,
int length)
throws IOException
ChannelBufferindex.
This method does not modify readerIndex or writerIndex of
this buffer.length - the maximum number of bytes to transfer-1 if the specified channel is closed.IOException - if the specified channel threw an exception during I/Opublic void writeByte(int value)
ChannelBufferwriterIndex
and increases the writerIndex by 1 in this buffer.
The 24 high-order bits of the specified value are ignored.writeByte in interface ChannelBufferwriteByte in class AbstractChannelBufferpublic void writeShort(int value)
ChannelBufferwriterIndex and increases the writerIndex by 2
in this buffer. The 16 high-order bits of the specified value are ignored.writeShort in interface ChannelBufferwriteShort in class AbstractChannelBufferpublic void writeMedium(int value)
ChannelBufferwriterIndex and increases the writerIndex by 3
in this buffer.writeMedium in interface ChannelBufferwriteMedium in class AbstractChannelBufferpublic void writeInt(int value)
ChannelBufferwriterIndex
and increases the writerIndex by 4 in this buffer.writeInt in interface ChannelBufferwriteInt in class AbstractChannelBufferpublic void writeLong(long value)
ChannelBufferwriterIndex and increases the writerIndex by 8
in this buffer.writeLong in interface ChannelBufferwriteLong in class AbstractChannelBufferpublic void writeBytes(byte[] src,
int srcIndex,
int length)
ChannelBufferwriterIndex and increases the writerIndex
by the number of the transferred bytes (= length).writeBytes in interface ChannelBufferwriteBytes in class AbstractChannelBuffersrcIndex - the first index of the sourcelength - the number of bytes to transferpublic void writeBytes(ChannelBuffer src, int srcIndex, int length)
ChannelBufferwriterIndex and increases the writerIndex
by the number of the transferred bytes (= length).writeBytes in interface ChannelBufferwriteBytes in class AbstractChannelBuffersrcIndex - the first index of the sourcelength - the number of bytes to transferpublic void writeBytes(ByteBuffer src)
ChannelBufferwriterIndex until the source buffer's position
reaches its limit, and increases the writerIndex by the
number of the transferred bytes.writeBytes in interface ChannelBufferwriteBytes in class AbstractChannelBufferpublic int writeBytes(InputStream in, int length) throws IOException
ChannelBufferwriterIndex and increases the
writerIndex by the number of the transferred bytes.writeBytes in interface ChannelBufferwriteBytes in class AbstractChannelBufferlength - the number of bytes to transferIOException - if the specified stream threw an exception during I/Opublic int writeBytes(ScatteringByteChannel in, int length) throws IOException
ChannelBufferwriterIndex and increases the
writerIndex by the number of the transferred bytes.writeBytes in interface ChannelBufferwriteBytes in class AbstractChannelBufferlength - the maximum number of bytes to transferIOException - if the specified channel threw an exception during I/Opublic void writeZero(int length)
ChannelBufferwriterIndex and increases the writerIndex by the
specified length.writeZero in interface ChannelBufferwriteZero in class AbstractChannelBufferlength - the number of NULs to write to the bufferpublic ChannelBuffer duplicate()
ChannelBufferbuf.slice(0, buf.capacity()).
This method does not modify readerIndex or writerIndex of
this buffer.public ChannelBuffer copy(int index, int length)
ChannelBufferreaderIndex or writerIndex of
this buffer.public ChannelBuffer slice(int index, int length)
ChannelBufferreaderIndex or writerIndex of
this buffer.public ByteBuffer toByteBuffer(int index, int length)
ChannelBufferreaderIndex or writerIndex of
this buffer.Copyright © 2008-2016 The Netty Project. All Rights Reserved.