public abstract class AbstractChannelBuffer extends java.lang.Object implements ChannelBuffer
| 构造器和说明 |
|---|
AbstractChannelBuffer() |
| 限定符和类型 | 方法和说明 |
|---|---|
int |
bytesBefore(byte value)
Locates the first occurrence of the specified
value in this
buffer. |
int |
bytesBefore(ChannelBufferIndexFinder indexFinder)
Locates the first place where the specified
indexFinder returns
true. |
int |
bytesBefore(int length,
byte value)
Locates the first occurrence of the specified
value in this
buffer. |
int |
bytesBefore(int length,
ChannelBufferIndexFinder indexFinder)
Locates the first place where the specified
indexFinder returns
true. |
int |
bytesBefore(int index,
int length,
byte value)
Locates the first occurrence of the specified
value in this
buffer. |
int |
bytesBefore(int index,
int length,
ChannelBufferIndexFinder indexFinder)
Locates the first place where the specified
indexFinder returns
true. |
protected void |
checkReadableBytes(int minimumReadableBytes)
Throws an
IndexOutOfBoundsException if the current
readable bytes of this buffer is less
than the specified value. |
void |
clear()
Sets the
readerIndex and writerIndex of this buffer to
0. |
int |
compareTo(ChannelBuffer that)
Compares the content of the specified buffer to the content of this
buffer.
|
ChannelBuffer |
copy()
Returns a copy of this buffer's readable bytes.
|
void |
discardReadBytes()
Discards the bytes between the 0th index and
readerIndex. |
void |
ensureWritableBytes(int writableBytes)
Makes sure the number of the writable bytes
is equal to or greater than the specified value.
|
boolean |
equals(java.lang.Object o)
Determines if the content of the specified buffer is identical to the
content of this array.
|
void |
getBytes(int index,
byte[] dst)
Transfers this buffer's data to the specified destination starting at
the specified absolute
index. |
void |
getBytes(int index,
ChannelBuffer dst)
Transfers this buffer's data to the specified destination starting at
the specified absolute
index until the destination becomes
non-writable. |
void |
getBytes(int index,
ChannelBuffer dst,
int length)
Transfers this buffer's data to the specified destination starting at
the specified absolute
index. |
char |
getChar(int index)
Gets a 2-byte UTF-16 character at the specified absolute
index in this buffer. |
double |
getDouble(int index)
Gets a 64-bit floating point number at the specified absolute
index in this buffer. |
float |
getFloat(int index)
Gets a 32-bit floating point number at the specified absolute
index in this buffer. |
int |
getMedium(int index)
Gets a 24-bit medium integer at the specified absolute
index in
this buffer. |
short |
getUnsignedByte(int index)
Gets an unsigned byte at the specified absolute
index in this
buffer. |
long |
getUnsignedInt(int index)
Gets an unsigned 32-bit integer at the specified absolute
index
in this buffer. |
int |
getUnsignedShort(int index)
Gets an unsigned 16-bit short integer at the specified absolute
index in this buffer. |
int |
hashCode()
Returns a hash code which was calculated from the content of this
buffer.
|
int |
indexOf(int fromIndex,
int toIndex,
byte value)
Locates the first occurrence of the specified
value in this
buffer. |
int |
indexOf(int fromIndex,
int toIndex,
ChannelBufferIndexFinder indexFinder)
Locates the first place where the specified
indexFinder
returns true. |
void |
markReaderIndex()
Marks the current
readerIndex in this buffer. |
void |
markWriterIndex()
Marks the current
writerIndex in this buffer. |
boolean |
readable()
Returns
true
if and only if (this.writerIndex - this.readerIndex) is greater
than 0. |
int |
readableBytes()
Returns the number of readable bytes which is equal to
(this.writerIndex - this.readerIndex). |
byte |
readByte()
Gets a byte at the current
readerIndex and increases
the readerIndex by 1 in this buffer. |
void |
readBytes(byte[] dst)
Transfers this buffer's data to the specified destination starting at
the current
readerIndex and increases the readerIndex
by the number of the transferred bytes (= dst.length). |
void |
readBytes(byte[] dst,
int dstIndex,
int length)
Transfers this buffer's data to the specified destination starting at
the current
readerIndex and increases the readerIndex
by the number of the transferred bytes (= length). |
void |
readBytes(java.nio.ByteBuffer dst)
Transfers this buffer's data to the specified destination starting at
the current
readerIndex until the destination's position
reaches its limit, and increases the readerIndex by the
number of the transferred bytes. |
void |
readBytes(ChannelBuffer dst)
Transfers this buffer's data to the specified destination starting at
the current
readerIndex until the destination becomes
non-writable, and increases the readerIndex by the number of the
transferred bytes. |
void |
readBytes(ChannelBuffer dst,
int length)
Transfers this buffer's data to the specified destination starting at
the current
readerIndex and increases the readerIndex
by the number of the transferred bytes (= length). |
void |
readBytes(ChannelBuffer dst,
int dstIndex,
int length)
Transfers this buffer's data to the specified destination starting at
the current
readerIndex and increases the readerIndex
by the number of the transferred bytes (= length). |
int |
readBytes(java.nio.channels.GatheringByteChannel out,
int length)
Transfers this buffer's data to the specified stream starting at the
current
readerIndex. |
ChannelBuffer |
readBytes(int length)
Transfers this buffer's data to a newly created buffer starting at
the current
readerIndex and increases the readerIndex
by the number of the transferred bytes (= length). |
void |
readBytes(java.io.OutputStream out,
int length)
Transfers this buffer's data to the specified stream starting at the
current
readerIndex. |
char |
readChar()
Gets a 2-byte UTF-16 character at the current
readerIndex
and increases the readerIndex by 2 in this buffer. |
double |
readDouble()
Gets a 64-bit floating point number at the current
readerIndex
and increases the readerIndex by 8 in this buffer. |
int |
readerIndex()
Returns the
readerIndex of this buffer. |
void |
readerIndex(int readerIndex)
Sets the
readerIndex of this buffer. |
float |
readFloat()
Gets a 32-bit floating point number at the current
readerIndex
and increases the readerIndex by 4 in this buffer. |
int |
readInt()
Gets a 32-bit integer at the current
readerIndex
and increases the readerIndex by 4 in this buffer. |
long |
readLong()
Gets a 64-bit integer at the current
readerIndex
and increases the readerIndex by 8 in this buffer. |
int |
readMedium()
Gets a 24-bit medium integer at the current
readerIndex
and increases the readerIndex by 3 in this buffer. |
short |
readShort()
Gets a 16-bit short integer at the current
readerIndex
and increases the readerIndex by 2 in this buffer. |
ChannelBuffer |
readSlice(int length)
Returns a new slice of this buffer's sub-region starting at the current
readerIndex and increases the readerIndex by the size
of the new slice (= length). |
short |
readUnsignedByte()
Gets an unsigned byte at the current
readerIndex and increases
the readerIndex by 1 in this buffer. |
long |
readUnsignedInt()
Gets an unsigned 32-bit integer at the current
readerIndex
and increases the readerIndex by 4 in this buffer. |
int |
readUnsignedMedium()
Gets an unsigned 24-bit medium integer at the current
readerIndex
and increases the readerIndex by 3 in this buffer. |
int |
readUnsignedShort()
Gets an unsigned 16-bit short integer at the current
readerIndex
and increases the readerIndex by 2 in this buffer. |
void |
resetReaderIndex()
Repositions the current
readerIndex to the marked
readerIndex in this buffer. |
void |
resetWriterIndex()
Repositions the current
writerIndex to the marked
writerIndex in this buffer. |
void |
setBytes(int index,
byte[] src)
Transfers the specified source array's data to this buffer starting at
the specified absolute
index. |
void |
setBytes(int index,
ChannelBuffer src)
Transfers the specified source buffer's data to this buffer starting at
the specified absolute
index until the source buffer becomes
unreadable. |
void |
setBytes(int index,
ChannelBuffer src,
int length)
Transfers the specified source buffer's data to this buffer starting at
the specified absolute
index. |
void |
setChar(int index,
int value)
Sets the specified 2-byte UTF-16 character at the specified absolute
index in this buffer. |
void |
setDouble(int index,
double value)
Sets the specified 64-bit floating-point number at the specified
absolute
index in this buffer. |
void |
setFloat(int index,
float value)
Sets the specified 32-bit floating-point number at the specified
absolute
index in this buffer. |
void |
setIndex(int readerIndex,
int writerIndex)
Sets the
readerIndex and writerIndex of this buffer
in one shot. |
void |
setZero(int index,
int length)
Fills this buffer with NUL (0x00) starting at the specified
absolute
index. |
void |
skipBytes(int length)
Increases the current
readerIndex by the specified
length in this buffer. |
ChannelBuffer |
slice()
Returns a slice of this buffer's readable bytes.
|
java.nio.ByteBuffer |
toByteBuffer()
Converts this buffer's readable bytes into a NIO buffer.
|
java.nio.ByteBuffer[] |
toByteBuffers()
Converts this buffer's readable bytes into an array of NIO buffers.
|
java.nio.ByteBuffer[] |
toByteBuffers(int index,
int length)
Converts this buffer's sub-region into an array of NIO buffers.
|
java.lang.String |
toString()
Returns the string representation of this buffer.
|
java.lang.String |
toString(java.nio.charset.Charset charset)
Decodes this buffer's readable bytes into a string with the specified
character set name.
|
java.lang.String |
toString(int index,
int length,
java.nio.charset.Charset charset)
Decodes this buffer's sub-region into a string with the specified
character set.
|
boolean |
writable()
Returns
true
if and only if (this.capacity - this.writerIndex) is greater
than 0. |
int |
writableBytes()
Returns the number of writable bytes which is equal to
(this.capacity - this.writerIndex). |
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)
Transfers the specified source array's data to this buffer starting at
the current
writerIndex and increases the writerIndex
by the number of the transferred bytes (= src.length). |
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(java.nio.ByteBuffer src)
Transfers the specified source buffer's data to this buffer starting at
the current
writerIndex until the source buffer's position
reaches its limit, and increases the writerIndex by the
number of the transferred bytes. |
void |
writeBytes(ChannelBuffer src)
Transfers the specified source buffer's data to this buffer starting at
the current
writerIndex until the source buffer becomes
unreadable, and increases the writerIndex by the number of
the transferred bytes. |
void |
writeBytes(ChannelBuffer src,
int length)
Transfers the specified source buffer's data to this buffer starting at
the current
writerIndex and increases the writerIndex
by the number of the transferred bytes (= length). |
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(java.io.InputStream in,
int length)
Transfers the content of the specified stream to this buffer
starting at the current
writerIndex and increases the
writerIndex by the number of the transferred bytes. |
int |
writeBytes(java.nio.channels.ScatteringByteChannel in,
int length)
Transfers the content of the specified channel to this buffer
starting at the current
writerIndex and increases the
writerIndex by the number of the transferred bytes. |
void |
writeChar(int value)
Sets the specified 2-byte UTF-16 character at the current
writerIndex and increases the writerIndex by 2
in this buffer. |
void |
writeDouble(double value)
Sets the specified 64-bit floating point number at the current
writerIndex and increases the writerIndex by 8
in this buffer. |
void |
writeFloat(float value)
Sets the specified 32-bit floating point number at the current
writerIndex and increases the writerIndex by 4
in this buffer. |
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. |
int |
writerIndex()
Returns the
writerIndex of this buffer. |
void |
writerIndex(int writerIndex)
Sets the
writerIndex of 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. |
array, arrayOffset, capacity, copy, duplicate, factory, getByte, getBytes, getBytes, getBytes, getBytes, getBytes, getInt, getLong, getShort, getUnsignedMedium, hasArray, isDirect, order, setByte, setBytes, setBytes, setBytes, setBytes, setBytes, setInt, setLong, setMedium, setShort, slice, toByteBufferpublic int readerIndex()
ChannelBufferreaderIndex of this buffer.readerIndex 在接口中 ChannelBufferpublic void readerIndex(int readerIndex)
ChannelBufferreaderIndex of this buffer.readerIndex 在接口中 ChannelBufferpublic int writerIndex()
ChannelBufferwriterIndex of this buffer.writerIndex 在接口中 ChannelBufferpublic void writerIndex(int writerIndex)
ChannelBufferwriterIndex of this buffer.writerIndex 在接口中 ChannelBufferpublic void setIndex(int readerIndex,
int writerIndex)
ChannelBufferreaderIndex and writerIndex of this buffer
in one shot. This method is useful when you have to worry about the
invocation order of ChannelBuffer.readerIndex(int) and ChannelBuffer.writerIndex(int)
methods. For example, the following code will fail:
// Create a buffer whose readerIndex, writerIndex and capacity are // 0, 0 and 8 respectively.The following code will also fail:ChannelBufferbuf =ChannelBuffers.buffer(8); // IndexOutOfBoundsException is thrown because the specified // readerIndex (2) cannot be greater than the current writerIndex (0). buf.readerIndex(2); buf.writerIndex(4);
// Create a buffer whose readerIndex, writerIndex and capacity are // 0, 8 and 8 respectively.By contrast, this method guarantees that it never throws anChannelBufferbuf =ChannelBuffers.wrappedBuffer(new byte[8]); // readerIndex becomes 8. buf.readLong(); // IndexOutOfBoundsException is thrown because the specified // writerIndex (4) cannot be less than the current readerIndex (8). buf.writerIndex(4); buf.readerIndex(2);
IndexOutOfBoundsException as long as the specified
indexes meet basic constraints, regardless what the current index
values of the buffer are:
// No matter what the current state of the buffer is, the following // call always succeeds as long as the capacity of the buffer is not // less than 4. buf.setIndex(2, 4);
setIndex 在接口中 ChannelBufferpublic void clear()
ChannelBufferreaderIndex and writerIndex of this buffer to
0.
This method is identical to setIndex(0, 0).
Please note that the behavior of this method is different
from that of NIO buffer, which sets the limit to
the capacity of the buffer.
clear 在接口中 ChannelBufferpublic boolean readable()
ChannelBuffertrue
if and only if (this.writerIndex - this.readerIndex) is greater
than 0.readable 在接口中 ChannelBufferpublic boolean writable()
ChannelBuffertrue
if and only if (this.capacity - this.writerIndex) is greater
than 0.writable 在接口中 ChannelBufferpublic int readableBytes()
ChannelBuffer(this.writerIndex - this.readerIndex).readableBytes 在接口中 ChannelBufferpublic int writableBytes()
ChannelBuffer(this.capacity - this.writerIndex).writableBytes 在接口中 ChannelBufferpublic void markReaderIndex()
ChannelBufferreaderIndex in this buffer. You can
reposition the current readerIndex to the marked
readerIndex by calling ChannelBuffer.resetReaderIndex().
The initial value of the marked readerIndex is 0.markReaderIndex 在接口中 ChannelBufferpublic void resetReaderIndex()
ChannelBufferreaderIndex to the marked
readerIndex in this buffer.resetReaderIndex 在接口中 ChannelBufferpublic void markWriterIndex()
ChannelBufferwriterIndex in this buffer. You can
reposition the current writerIndex to the marked
writerIndex by calling ChannelBuffer.resetWriterIndex().
The initial value of the marked writerIndex is 0.markWriterIndex 在接口中 ChannelBufferpublic void resetWriterIndex()
ChannelBufferwriterIndex to the marked
writerIndex in this buffer.resetWriterIndex 在接口中 ChannelBufferpublic void discardReadBytes()
ChannelBufferreaderIndex.
It moves the bytes between readerIndex and writerIndex
to the 0th index, and sets readerIndex and writerIndex
to 0 and oldWriterIndex - oldReaderIndex respectively.
Please refer to the class documentation for more detailed explanation.
discardReadBytes 在接口中 ChannelBufferpublic void ensureWritableBytes(int writableBytes)
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 在接口中 ChannelBufferwritableBytes - the expected minimum number of writable bytespublic short getUnsignedByte(int index)
ChannelBufferindex in this
buffer. This method does not modify readerIndex or
writerIndex of this buffer.getUnsignedByte 在接口中 ChannelBufferpublic int getUnsignedShort(int index)
ChannelBufferindex in this buffer. This method does not modify
readerIndex or writerIndex of this buffer.getUnsignedShort 在接口中 ChannelBufferpublic int getMedium(int index)
ChannelBufferindex in
this buffer. This method does not modify readerIndex or
writerIndex of this buffer.getMedium 在接口中 ChannelBufferpublic long getUnsignedInt(int index)
ChannelBufferindex
in this buffer. This method does not modify readerIndex or
writerIndex of this buffer.getUnsignedInt 在接口中 ChannelBufferpublic char getChar(int index)
ChannelBufferindex in this buffer. This method does not modify
readerIndex or writerIndex of this buffer.getChar 在接口中 ChannelBufferpublic float getFloat(int index)
ChannelBufferindex in this buffer. This method does not modify
readerIndex or writerIndex of this buffer.getFloat 在接口中 ChannelBufferpublic double getDouble(int index)
ChannelBufferindex in this buffer. This method does not modify
readerIndex or writerIndex of this buffer.getDouble 在接口中 ChannelBufferpublic void getBytes(int index,
byte[] dst)
ChannelBufferindex.
This method does not modify readerIndex or writerIndex of
this buffergetBytes 在接口中 ChannelBufferpublic void getBytes(int index,
ChannelBuffer dst)
ChannelBufferindex until the destination becomes
non-writable. This method is basically same with
ChannelBuffer.getBytes(int, ChannelBuffer, int, int), except that this
method increases the writerIndex of the destination by the
number of the transferred bytes while
ChannelBuffer.getBytes(int, ChannelBuffer, int, int) does not.
This method does not modify readerIndex or writerIndex of
the source buffer (i.e. this).getBytes 在接口中 ChannelBufferpublic void getBytes(int index,
ChannelBuffer dst,
int length)
ChannelBufferindex. This method is basically same
with ChannelBuffer.getBytes(int, ChannelBuffer, int, int), except that this
method increases the writerIndex of the destination by the
number of the transferred bytes while
ChannelBuffer.getBytes(int, ChannelBuffer, int, int) does not.
This method does not modify readerIndex or writerIndex of
the source buffer (i.e. this).getBytes 在接口中 ChannelBufferlength - the number of bytes to transferpublic void setChar(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.setChar 在接口中 ChannelBufferpublic void setFloat(int index,
float value)
ChannelBufferindex in this buffer.
This method does not modify readerIndex or writerIndex of
this buffer.setFloat 在接口中 ChannelBufferpublic void setDouble(int index,
double value)
ChannelBufferindex in this buffer.
This method does not modify readerIndex or writerIndex of
this buffer.setDouble 在接口中 ChannelBufferpublic void setBytes(int index,
byte[] src)
ChannelBufferindex.
This method does not modify readerIndex or writerIndex of
this buffer.setBytes 在接口中 ChannelBufferpublic void setBytes(int index,
ChannelBuffer src)
ChannelBufferindex until the source buffer becomes
unreadable. This method is basically same with
ChannelBuffer.setBytes(int, ChannelBuffer, int, int), except that this
method increases the readerIndex of the source buffer by
the number of the transferred bytes while
ChannelBuffer.setBytes(int, ChannelBuffer, int, int) does not.
This method does not modify readerIndex or writerIndex of
the source buffer (i.e. this).setBytes 在接口中 ChannelBufferpublic void setBytes(int index,
ChannelBuffer src,
int length)
ChannelBufferindex. This method is basically same
with ChannelBuffer.setBytes(int, ChannelBuffer, int, int), except that this
method increases the readerIndex of the source buffer by
the number of the transferred bytes while
ChannelBuffer.setBytes(int, ChannelBuffer, int, int) does not.
This method does not modify readerIndex or writerIndex of
the source buffer (i.e. this).setBytes 在接口中 ChannelBufferlength - the number of bytes to transferpublic void setZero(int index,
int length)
ChannelBufferindex.
This method does not modify readerIndex or writerIndex of
this buffer.setZero 在接口中 ChannelBufferlength - the number of NULs to write to the bufferpublic byte readByte()
ChannelBufferreaderIndex and increases
the readerIndex by 1 in this buffer.readByte 在接口中 ChannelBufferpublic short readUnsignedByte()
ChannelBufferreaderIndex and increases
the readerIndex by 1 in this buffer.readUnsignedByte 在接口中 ChannelBufferpublic short readShort()
ChannelBufferreaderIndex
and increases the readerIndex by 2 in this buffer.readShort 在接口中 ChannelBufferpublic int readUnsignedShort()
ChannelBufferreaderIndex
and increases the readerIndex by 2 in this buffer.readUnsignedShort 在接口中 ChannelBufferpublic int readMedium()
ChannelBufferreaderIndex
and increases the readerIndex by 3 in this buffer.readMedium 在接口中 ChannelBufferpublic int readUnsignedMedium()
ChannelBufferreaderIndex
and increases the readerIndex by 3 in this buffer.readUnsignedMedium 在接口中 ChannelBufferpublic int readInt()
ChannelBufferreaderIndex
and increases the readerIndex by 4 in this buffer.readInt 在接口中 ChannelBufferpublic long readUnsignedInt()
ChannelBufferreaderIndex
and increases the readerIndex by 4 in this buffer.readUnsignedInt 在接口中 ChannelBufferpublic long readLong()
ChannelBufferreaderIndex
and increases the readerIndex by 8 in this buffer.readLong 在接口中 ChannelBufferpublic char readChar()
ChannelBufferreaderIndex
and increases the readerIndex by 2 in this buffer.readChar 在接口中 ChannelBufferpublic float readFloat()
ChannelBufferreaderIndex
and increases the readerIndex by 4 in this buffer.readFloat 在接口中 ChannelBufferpublic double readDouble()
ChannelBufferreaderIndex
and increases the readerIndex by 8 in this buffer.readDouble 在接口中 ChannelBufferpublic ChannelBuffer readBytes(int length)
ChannelBufferreaderIndex and increases the readerIndex
by the number of the transferred bytes (= length).
The returned buffer's readerIndex and writerIndex are
0 and length respectively.readBytes 在接口中 ChannelBufferlength - the number of bytes to transferpublic ChannelBuffer readSlice(int length)
ChannelBufferreaderIndex and increases the readerIndex by the size
of the new slice (= length).readSlice 在接口中 ChannelBufferlength - the size of the new slicepublic void readBytes(byte[] dst,
int dstIndex,
int length)
ChannelBufferreaderIndex and increases the readerIndex
by the number of the transferred bytes (= length).readBytes 在接口中 ChannelBufferdstIndex - the first index of the destinationlength - the number of bytes to transferpublic void readBytes(byte[] dst)
ChannelBufferreaderIndex and increases the readerIndex
by the number of the transferred bytes (= dst.length).readBytes 在接口中 ChannelBufferpublic void readBytes(ChannelBuffer dst)
ChannelBufferreaderIndex until the destination becomes
non-writable, and increases the readerIndex by the number of the
transferred bytes. This method is basically same with
ChannelBuffer.readBytes(ChannelBuffer, int, int), except that this method
increases the writerIndex of the destination by the number of
the transferred bytes while ChannelBuffer.readBytes(ChannelBuffer, int, int)
does not.readBytes 在接口中 ChannelBufferpublic void readBytes(ChannelBuffer dst, int length)
ChannelBufferreaderIndex and increases the readerIndex
by the number of the transferred bytes (= length). This method
is basically same with ChannelBuffer.readBytes(ChannelBuffer, int, int),
except that this method increases the writerIndex of the
destination by the number of the transferred bytes (= length)
while ChannelBuffer.readBytes(ChannelBuffer, int, int) does not.readBytes 在接口中 ChannelBufferpublic void readBytes(ChannelBuffer dst, int dstIndex, int length)
ChannelBufferreaderIndex and increases the readerIndex
by the number of the transferred bytes (= length).readBytes 在接口中 ChannelBufferdstIndex - the first index of the destinationlength - the number of bytes to transferpublic void readBytes(java.nio.ByteBuffer dst)
ChannelBufferreaderIndex until the destination's position
reaches its limit, and increases the readerIndex by the
number of the transferred bytes.readBytes 在接口中 ChannelBufferpublic int readBytes(java.nio.channels.GatheringByteChannel out,
int length)
throws java.io.IOException
ChannelBufferreaderIndex.readBytes 在接口中 ChannelBufferlength - the maximum number of bytes to transferjava.io.IOException - if the specified channel threw an exception during I/Opublic void readBytes(java.io.OutputStream out,
int length)
throws java.io.IOException
ChannelBufferreaderIndex.readBytes 在接口中 ChannelBufferlength - the number of bytes to transferjava.io.IOException - if the specified stream threw an exception during I/Opublic void skipBytes(int length)
ChannelBufferreaderIndex by the specified
length in this buffer.skipBytes 在接口中 ChannelBufferpublic 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 在接口中 ChannelBufferpublic 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 在接口中 ChannelBufferpublic void writeMedium(int value)
ChannelBufferwriterIndex and increases the writerIndex by 3
in this buffer.writeMedium 在接口中 ChannelBufferpublic void writeInt(int value)
ChannelBufferwriterIndex
and increases the writerIndex by 4 in this buffer.writeInt 在接口中 ChannelBufferpublic void writeLong(long value)
ChannelBufferwriterIndex and increases the writerIndex by 8
in this buffer.writeLong 在接口中 ChannelBufferpublic void writeChar(int value)
ChannelBufferwriterIndex and increases the writerIndex by 2
in this buffer. The 16 high-order bits of the specified value are ignored.writeChar 在接口中 ChannelBufferpublic void writeFloat(float value)
ChannelBufferwriterIndex and increases the writerIndex by 4
in this buffer.writeFloat 在接口中 ChannelBufferpublic void writeDouble(double value)
ChannelBufferwriterIndex and increases the writerIndex by 8
in this buffer.writeDouble 在接口中 ChannelBufferpublic void writeBytes(byte[] src,
int srcIndex,
int length)
ChannelBufferwriterIndex and increases the writerIndex
by the number of the transferred bytes (= length).writeBytes 在接口中 ChannelBuffersrcIndex - the first index of the sourcelength - the number of bytes to transferpublic void writeBytes(byte[] src)
ChannelBufferwriterIndex and increases the writerIndex
by the number of the transferred bytes (= src.length).writeBytes 在接口中 ChannelBufferpublic void writeBytes(ChannelBuffer src)
ChannelBufferwriterIndex until the source buffer becomes
unreadable, and increases the writerIndex by the number of
the transferred bytes. This method is basically same with
ChannelBuffer.writeBytes(ChannelBuffer, int, int), except that this method
increases the readerIndex of the source buffer by the number of
the transferred bytes while ChannelBuffer.writeBytes(ChannelBuffer, int, int)
does not.writeBytes 在接口中 ChannelBufferpublic void writeBytes(ChannelBuffer src, int length)
ChannelBufferwriterIndex and increases the writerIndex
by the number of the transferred bytes (= length). This method
is basically same with ChannelBuffer.writeBytes(ChannelBuffer, int, int),
except that this method increases the readerIndex of the source
buffer by the number of the transferred bytes (= length) while
ChannelBuffer.writeBytes(ChannelBuffer, int, int) does not.writeBytes 在接口中 ChannelBufferlength - 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 在接口中 ChannelBuffersrcIndex - the first index of the sourcelength - the number of bytes to transferpublic void writeBytes(java.nio.ByteBuffer src)
ChannelBufferwriterIndex until the source buffer's position
reaches its limit, and increases the writerIndex by the
number of the transferred bytes.writeBytes 在接口中 ChannelBufferpublic int writeBytes(java.io.InputStream in,
int length)
throws java.io.IOException
ChannelBufferwriterIndex and increases the
writerIndex by the number of the transferred bytes.writeBytes 在接口中 ChannelBufferlength - the number of bytes to transferjava.io.IOException - if the specified stream threw an exception during I/Opublic int writeBytes(java.nio.channels.ScatteringByteChannel in,
int length)
throws java.io.IOException
ChannelBufferwriterIndex and increases the
writerIndex by the number of the transferred bytes.writeBytes 在接口中 ChannelBufferlength - the maximum number of bytes to transferjava.io.IOException - if the specified channel threw an exception during I/Opublic void writeZero(int length)
ChannelBufferwriterIndex and increases the writerIndex by the
specified length.writeZero 在接口中 ChannelBufferlength - the number of NULs to write to the bufferpublic ChannelBuffer copy()
ChannelBufferbuf.copy(buf.readerIndex(), buf.readableBytes()).
This method does not modify readerIndex or writerIndex of
this buffer.copy 在接口中 ChannelBufferpublic ChannelBuffer slice()
ChannelBufferbuf.slice(buf.readerIndex(), buf.readableBytes()).
This method does not modify readerIndex or writerIndex of
this buffer.slice 在接口中 ChannelBufferpublic java.nio.ByteBuffer toByteBuffer()
ChannelBufferbuf.toByteBuffer(buf.readerIndex(), buf.readableBytes()).
This method does not modify readerIndex or writerIndex of
this buffer.toByteBuffer 在接口中 ChannelBufferpublic java.nio.ByteBuffer[] toByteBuffers()
ChannelBufferbuf.toByteBuffers(buf.readerIndex(), buf.readableBytes()).
This method does not modify readerIndex or writerIndex of
this buffer.toByteBuffers 在接口中 ChannelBufferpublic java.nio.ByteBuffer[] toByteBuffers(int index,
int length)
ChannelBufferreaderIndex or writerIndex of
this buffer.toByteBuffers 在接口中 ChannelBufferpublic java.lang.String toString(java.nio.charset.Charset charset)
ChannelBufferbuf.toString(buf.readerIndex(), buf.readableBytes(), charsetName).
This method does not modify readerIndex or writerIndex of
this buffer.toString 在接口中 ChannelBufferpublic java.lang.String toString(int index,
int length,
java.nio.charset.Charset charset)
ChannelBufferreaderIndex or
writerIndex of this buffer.toString 在接口中 ChannelBufferpublic int indexOf(int fromIndex,
int toIndex,
byte value)
ChannelBuffervalue in this
buffer. The search takes place from the specified fromIndex
(inclusive) to the specified toIndex (exclusive).
If fromIndex is greater than toIndex, the search is
performed in a reversed order.
This method does not modify readerIndex or writerIndex of
this buffer.
indexOf 在接口中 ChannelBuffer-1 otherwise.public int indexOf(int fromIndex,
int toIndex,
ChannelBufferIndexFinder indexFinder)
ChannelBufferindexFinder
returns true. The search takes place from the specified
fromIndex (inclusive) to the specified toIndex
(exclusive).
If fromIndex is greater than toIndex, the search is
performed in a reversed order.
This method does not modify readerIndex or writerIndex of
this buffer.
indexOf 在接口中 ChannelBufferindexFinder
returned true. -1 if the indexFinder
did not return true at all.public int bytesBefore(byte value)
ChannelBuffervalue in this
buffer. The search takes place from the current readerIndex
(inclusive) to the current writerIndex (exclusive).
This method does not modify readerIndex or writerIndex of
this buffer.
bytesBefore 在接口中 ChannelBufferreaderIndex
and the first occurrence if found. -1 otherwise.public int bytesBefore(ChannelBufferIndexFinder indexFinder)
ChannelBufferindexFinder returns
true. The search takes place from the current readerIndex
(inclusive) to the current writerIndex.
This method does not modify readerIndex or writerIndex of
this buffer.
bytesBefore 在接口中 ChannelBufferreaderIndex
and the first place where the indexFinder returned
true. -1 if the indexFinder did not
return true at all.public int bytesBefore(int length,
byte value)
ChannelBuffervalue in this
buffer. The search starts from the current readerIndex
(inclusive) and lasts for the specified length.
This method does not modify readerIndex or writerIndex of
this buffer.
bytesBefore 在接口中 ChannelBufferreaderIndex
and the first occurrence if found. -1 otherwise.public int bytesBefore(int length,
ChannelBufferIndexFinder indexFinder)
ChannelBufferindexFinder returns
true. The search starts the current readerIndex
(inclusive) and lasts for the specified length.
This method does not modify readerIndex or writerIndex of
this buffer.
bytesBefore 在接口中 ChannelBufferreaderIndex
and the first place where the indexFinder returned
true. -1 if the indexFinder did not
return true at all.public int bytesBefore(int index,
int length,
byte value)
ChannelBuffervalue in this
buffer. The search starts from the specified index (inclusive)
and lasts for the specified length.
This method does not modify readerIndex or writerIndex of
this buffer.
bytesBefore 在接口中 ChannelBufferindex
and the first occurrence if found. -1 otherwise.public int bytesBefore(int index,
int length,
ChannelBufferIndexFinder indexFinder)
ChannelBufferindexFinder returns
true. The search starts the specified index (inclusive)
and lasts for the specified length.
This method does not modify readerIndex or writerIndex of
this buffer.
bytesBefore 在接口中 ChannelBufferindex
and the first place where the indexFinder returned
true. -1 if the indexFinder did not
return true at all.public int hashCode()
ChannelBufferhashCode 在接口中 ChannelBufferhashCode 在类中 java.lang.Objectpublic boolean equals(java.lang.Object o)
ChannelBufferChannelBuffer.readerIndex() nor
ChannelBuffer.writerIndex(). This method also returns false for
null and an object which is not an instance of
ChannelBuffer type.equals 在接口中 ChannelBufferequals 在类中 java.lang.Objectpublic int compareTo(ChannelBuffer that)
ChannelBufferstrcmp,
memcmp and String.compareTo(String).compareTo 在接口中 java.lang.Comparable<ChannelBuffer>compareTo 在接口中 ChannelBufferpublic java.lang.String toString()
ChannelBufferChannelBuffer.readerIndex(),
ChannelBuffer.writerIndex() and ChannelBuffer.capacity().toString 在接口中 ChannelBuffertoString 在类中 java.lang.Objectprotected void checkReadableBytes(int minimumReadableBytes)
IndexOutOfBoundsException if the current
readable bytes of this buffer is less
than the specified value.