Interface Buffer
-
public interface BufferRepresents an abstract view for one or more primitive byte arrays and NIO buffers.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description intcapacity()Returns the number of bytes (octets) this buffer can contain.BuffergetBytes(int index, byte[] dst)Transfers this buffer's data to the specified destination starting at the specified absoluteindex.booleanisDirect()Returnstrueif and only if this buffer is backed by an NIO direct buffer.BuffermarkWriterIndex()Marks the current writer index in this buffer.ByteBuffernioBuffer()Exposes this buffer's readable bytes as a NIOByteBuffer.ByteBuffernioBuffer(int index, int length)Exposes this buffer's sub-region as an NIOByteBuffer.intnioBufferCount()Returns the maximum number of NIOByteBuffers that consist this buffer.ByteBuffer[]nioBuffers()Exposes this buffer's readable bytes as NIO ByteBuffer's instances.ByteBuffer[]nioBuffers(int index, int length)Exposes this buffer's readable bytes as NIO ByteBuffer's instances.intreadableBytes()Returns the number of readable bytes.booleanreadBoolean()Gets a boolean and advances the reader index.bytereadByte()Gets a byte and advances the reader index.BufferreadBytes(byte[] destination)Transfers this buffer's data to the specified destination starting at the current reader index and advances the reader index.BufferreadBytes(byte[] destination, int dstIndex, int length)Transfers this buffer's data to the specified destination starting at the current reader index and advances the reader index.BufferreadBytes(OutputStream out, int length)Transfers this buffer's data to the specified stream starting at the current reader index and advances the index.BufferreadBytes(ByteBuffer dst)Transfers this buffer's data to the specified destination starting at the current reader index until the destination's position reaches its limit, and advances the reader index.doublereadDouble()Gets a 64-bit floating point number and advances the reader index.intreaderIndex()Returns the reader index of this buffer.BufferreaderIndex(int readerIndex)Sets the reader index of this buffer.floatreadFloat()Gets a 32-bit floating point number and advances the reader index.intreadInt()Gets a 32-bit integer at the current index and advances the reader index.longreadLong()Gets a 64-bit integer and advances the reader index.shortreadShort()Gets a 16-bit short integer and advances the reader index.intreferenceCount()Returns the reference count of this object.booleanrelease()Decreases the reference count by1and deallocates this object if the reference count reaches at0.BufferresetWriterIndex()Repositions the current writer index to the marked index in this buffer.Bufferretain()Increases the reference count by1.BufferwriteBoolean(boolean value)Sets the specified boolean at the current writer index and advances the index.BufferwriteByte(int value)Sets the specified byte at the current writer index and advances the index.BufferwriteBytes(byte[] src)Transfers the specified source array's data to this buffer starting at the current writer index and advances the index.BufferwriteBytes(byte[] src, int srcIndex, int length)Transfers the specified source array's data to this buffer starting at the current writer index and advances the index.BufferwriteBytes(ByteBuffer src)Transfers the specified source byte data to this buffer starting at the current writer index and advances the index.BufferwriteDouble(double value)Sets the specified 64-bit floating point number at the current writer index and advances the index.BufferwriteFloat(float value)Sets the specified 32-bit floating point number at the current writer index and advances the index.BufferwriteInt(int value)Sets the specified 32-bit integer at the current writer index and advances the index.BufferwriteLong(long value)Sets the specified 64-bit long integer at the current writer index and advances the index.intwriterIndex()Returns the writer index of this buffer.BufferwriterIndex(int writerIndex)Sets the writer index of this buffer.BufferwriteShort(int value)Sets the specified 16-bit short integer at the current writer index and advances the index.
-
-
-
Method Detail
-
readableBytes
int readableBytes()
Returns the number of readable bytes.
-
readerIndex
int readerIndex()
Returns the reader index of this buffer.
-
readerIndex
Buffer readerIndex(int readerIndex)
Sets the reader index of this buffer.- Throws:
IndexOutOfBoundsException- if its out of bounds.
-
writerIndex
int writerIndex()
Returns the writer index of this buffer.
-
writerIndex
Buffer writerIndex(int writerIndex)
Sets the writer index of this buffer.
-
markWriterIndex
Buffer markWriterIndex()
Marks the current writer index in this buffer.
-
resetWriterIndex
Buffer resetWriterIndex()
Repositions the current writer index to the marked index in this buffer.
-
capacity
int capacity()
Returns the number of bytes (octets) this buffer can contain.
-
isDirect
boolean isDirect()
Returnstrueif and only if this buffer is backed by an NIO direct buffer.
-
readBoolean
boolean readBoolean()
Gets a boolean and advances the reader index.
-
readByte
byte readByte()
Gets a byte and advances the reader index.
-
readShort
short readShort()
Gets a 16-bit short integer and advances the reader index.
-
readInt
int readInt()
Gets a 32-bit integer at the current index and advances the reader index.
-
readLong
long readLong()
Gets a 64-bit integer and advances the reader index.
-
readFloat
float readFloat()
Gets a 32-bit floating point number and advances the reader index.
-
readDouble
double readDouble()
Gets a 64-bit floating point number and advances the reader index.
-
readBytes
Buffer readBytes(byte[] destination)
Transfers this buffer's data to the specified destination starting at the current reader index and advances the reader index.
-
readBytes
Buffer readBytes(byte[] destination, int dstIndex, int length)
Transfers this buffer's data to the specified destination starting at the current reader index and advances the reader index.- Parameters:
destination- The destination bufferdstIndex- the first index of the destinationlength- the number of bytes to transfer
-
readBytes
Buffer readBytes(ByteBuffer dst)
Transfers this buffer's data to the specified destination starting at the current reader index until the destination's position reaches its limit, and advances the reader index.
-
readBytes
Buffer readBytes(OutputStream out, int length) throws IOException
Transfers this buffer's data to the specified stream starting at the current reader index and advances the index.- Parameters:
length- the number of bytes to transfer- Throws:
IOException- if the specified stream threw an exception during I/O
-
writeBoolean
Buffer writeBoolean(boolean value)
Sets the specified boolean at the current writer index and advances the index.
-
writeByte
Buffer writeByte(int value)
Sets the specified byte at the current writer index and advances the index.
-
writeShort
Buffer writeShort(int value)
Sets the specified 16-bit short integer at the current writer index and advances the index.
-
writeInt
Buffer writeInt(int value)
Sets the specified 32-bit integer at the current writer index and advances the index.
-
writeLong
Buffer writeLong(long value)
Sets the specified 64-bit long integer at the current writer index and advances the index.
-
writeFloat
Buffer writeFloat(float value)
Sets the specified 32-bit floating point number at the current writer index and advances the index.
-
writeDouble
Buffer writeDouble(double value)
Sets the specified 64-bit floating point number at the current writer index and advances the index.
-
writeBytes
Buffer writeBytes(byte[] src)
Transfers the specified source array's data to this buffer starting at the current writer index and advances the index.
-
writeBytes
Buffer writeBytes(ByteBuffer src)
Transfers the specified source byte data to this buffer starting at the current writer index and advances the index.
-
writeBytes
Buffer writeBytes(byte[] src, int srcIndex, int length)
Transfers the specified source array's data to this buffer starting at the current writer index and advances the index.
-
release
boolean release()
Decreases the reference count by1and deallocates this object if the reference count reaches at0.
-
retain
Buffer retain()
Increases the reference count by1.
-
referenceCount
int referenceCount()
Returns the reference count of this object.
-
nioBufferCount
int nioBufferCount()
Returns the maximum number of NIOByteBuffers that consist this buffer.
-
nioBuffers
ByteBuffer[] nioBuffers()
Exposes this buffer's readable bytes as NIO ByteBuffer's instances.
-
nioBuffers
ByteBuffer[] nioBuffers(int index, int length)
Exposes this buffer's readable bytes as NIO ByteBuffer's instances.
-
nioBuffer
ByteBuffer nioBuffer()
Exposes this buffer's readable bytes as a 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.
-
nioBuffer
ByteBuffer nioBuffer(int index, int length)
Exposes this buffer's sub-region as an NIOByteBuffer.
-
getBytes
Buffer getBytes(int index, byte[] dst)
Transfers this buffer's data to the specified destination starting at the specified absoluteindex. This method does not modify reader or writer indexes.
-
-