public class ByteBufInputStream
extends java.io.InputStream
implements java.io.DataInput
InputStream which reads data from a ByteBuf.
A read operation against this stream will occur at the readerIndex
of its underlying buffer and the readerIndex will increase during
the read operation. Please note that it only reads up to the number of
readable bytes determined at the moment of construction. Therefore,
updating ByteBuf.writerIndex() will not affect the return
value of available().
This stream implements DataInput for your convenience.
The endianness of the stream is not always big endian but depends on
the endianness of the underlying buffer.
ByteBufOutputStream| Constructor and Description |
|---|
ByteBufInputStream(ByteBuf buffer)
Creates a new stream which reads data from the specified
buffer
starting at the current readerIndex and ending at the current
writerIndex. |
ByteBufInputStream(ByteBuf buffer,
boolean releaseOnClose)
Creates a new stream which reads data from the specified
buffer
starting at the current readerIndex and ending at the current
writerIndex. |
ByteBufInputStream(ByteBuf buffer,
int length)
Creates a new stream which reads data from the specified
buffer
starting at the current readerIndex and ending at
readerIndex + length. |
ByteBufInputStream(ByteBuf buffer,
int length,
boolean releaseOnClose)
Creates a new stream which reads data from the specified
buffer
starting at the current readerIndex and ending at
readerIndex + length. |
| Modifier and Type | Method and Description |
|---|---|
int |
available() |
void |
close() |
void |
mark(int readlimit) |
boolean |
markSupported() |
int |
read() |
int |
read(byte[] b,
int off,
int len) |
boolean |
readBoolean() |
byte |
readByte() |
int |
readBytes()
Returns the number of read bytes by this stream so far.
|
char |
readChar() |
double |
readDouble() |
float |
readFloat() |
void |
readFully(byte[] b) |
void |
readFully(byte[] b,
int off,
int len) |
int |
readInt() |
java.lang.String |
readLine() |
long |
readLong() |
short |
readShort() |
int |
readUnsignedByte() |
int |
readUnsignedShort() |
java.lang.String |
readUTF() |
void |
reset() |
long |
skip(long n) |
int |
skipBytes(int n) |
public ByteBufInputStream(ByteBuf buffer)
buffer
starting at the current readerIndex and ending at the current
writerIndex.buffer - The buffer which provides the content for this InputStream.public ByteBufInputStream(ByteBuf buffer, int length)
buffer
starting at the current readerIndex and ending at
readerIndex + length.buffer - The buffer which provides the content for this InputStream.length - The length of the buffer to use for this InputStream.java.lang.IndexOutOfBoundsException - if readerIndex + length is greater than
writerIndexpublic ByteBufInputStream(ByteBuf buffer, boolean releaseOnClose)
buffer
starting at the current readerIndex and ending at the current
writerIndex.buffer - The buffer which provides the content for this InputStream.releaseOnClose - true means that when close() is called then ReferenceCounted.release() will
be called on buffer.public ByteBufInputStream(ByteBuf buffer, int length, boolean releaseOnClose)
buffer
starting at the current readerIndex and ending at
readerIndex + length.buffer - The buffer which provides the content for this InputStream.length - The length of the buffer to use for this InputStream.releaseOnClose - true means that when close() is called then ReferenceCounted.release() will
be called on buffer.java.lang.IndexOutOfBoundsException - if readerIndex + length is greater than
writerIndexpublic int readBytes()
public void close()
throws java.io.IOException
close in interface java.io.Closeableclose in interface java.lang.AutoCloseableclose in class java.io.InputStreamjava.io.IOExceptionpublic int available()
throws java.io.IOException
available in class java.io.InputStreamjava.io.IOExceptionpublic void mark(int readlimit)
mark in class java.io.InputStreampublic boolean markSupported()
markSupported in class java.io.InputStreampublic int read()
throws java.io.IOException
read in class java.io.InputStreamjava.io.IOExceptionpublic int read(byte[] b,
int off,
int len)
throws java.io.IOException
read in class java.io.InputStreamjava.io.IOExceptionpublic void reset()
throws java.io.IOException
reset in class java.io.InputStreamjava.io.IOExceptionpublic long skip(long n)
throws java.io.IOException
skip in class java.io.InputStreamjava.io.IOExceptionpublic boolean readBoolean()
throws java.io.IOException
readBoolean in interface java.io.DataInputjava.io.IOExceptionpublic byte readByte()
throws java.io.IOException
readByte in interface java.io.DataInputjava.io.IOExceptionpublic char readChar()
throws java.io.IOException
readChar in interface java.io.DataInputjava.io.IOExceptionpublic double readDouble()
throws java.io.IOException
readDouble in interface java.io.DataInputjava.io.IOExceptionpublic float readFloat()
throws java.io.IOException
readFloat in interface java.io.DataInputjava.io.IOExceptionpublic void readFully(byte[] b)
throws java.io.IOException
readFully in interface java.io.DataInputjava.io.IOExceptionpublic void readFully(byte[] b,
int off,
int len)
throws java.io.IOException
readFully in interface java.io.DataInputjava.io.IOExceptionpublic int readInt()
throws java.io.IOException
readInt in interface java.io.DataInputjava.io.IOExceptionpublic java.lang.String readLine()
throws java.io.IOException
readLine in interface java.io.DataInputjava.io.IOExceptionpublic long readLong()
throws java.io.IOException
readLong in interface java.io.DataInputjava.io.IOExceptionpublic short readShort()
throws java.io.IOException
readShort in interface java.io.DataInputjava.io.IOExceptionpublic java.lang.String readUTF()
throws java.io.IOException
readUTF in interface java.io.DataInputjava.io.IOExceptionpublic int readUnsignedByte()
throws java.io.IOException
readUnsignedByte in interface java.io.DataInputjava.io.IOExceptionpublic int readUnsignedShort()
throws java.io.IOException
readUnsignedShort in interface java.io.DataInputjava.io.IOExceptionpublic int skipBytes(int n)
throws java.io.IOException
skipBytes in interface java.io.DataInputjava.io.IOExceptionCopyright © 2008–2018 The Netty Project. All rights reserved.