public class OptimizedByteArrayInputStream extends InputStream
Modifier and Type | Field and Description |
---|---|
protected byte[] |
_buffer
An array of bytes that was provided by the creator of the stream.
|
protected int |
_count
The index one greater than the last valid character in the input stream buffer.
|
protected int |
_position
The index of the next character to read from the input stream buffer.
|
Constructor and Description |
---|
OptimizedByteArrayInputStream(byte[] buffer)
Creates a
ByteArrayInputStream so that it uses buffer as its
buffer array. |
Modifier and Type | Method and Description |
---|---|
int |
available()
Returns the number of bytes that can be read from this input stream without blocking.
|
int |
read()
Reads the next byte of data from this input stream.
|
int |
read(byte[] b,
int off,
int len)
Reads up to
len bytes of data into an array of bytes from this input stream. |
byte |
readByte() |
int |
readUnsignedByte() |
void |
setBuffer(byte[] buffer)
Sets a
GSByteArrayInputStream so that it uses buffer as its buffer
array. |
long |
skip(long n)
Skips
n bytes of input from this input stream. |
close, mark, markSupported, read, reset
protected byte[] _buffer
buf[0]
through buffer[count-1]
are the only bytes that can ever be
read from the stream; element buffer[pos]
is the next byte to be read.protected int _position
count
. The next byte to
be read from the input stream buffer will be buffer[position]
.protected int _count
buffer
. It is
one greater than the position of the last byte within buffer
that can ever be
read from the input stream buffer.public OptimizedByteArrayInputStream(byte[] buffer)
ByteArrayInputStream
so that it uses buffer
as its
buffer array. The buffer array is not copied. The initial value of pos
is
0
and the initial value of count
is the length of
buffer
.buffer
- the input buffer.public void setBuffer(byte[] buffer)
GSByteArrayInputStream
so that it uses buffer
as its buffer
array. The buffer array is not copied. The initial value of pos
is
0
and the initial value of count
is the length of
buffer
.buffer
- the input buffer.public int read()
int
in the range 0
to 255
. If no byte is available
because the end of the stream has been reached, the value -1
is returned.
This read
method cannot block.
read
in class InputStream
-1
if the end of the stream has been reached.public byte readByte()
public int readUnsignedByte()
public int read(byte[] b, int off, int len)
len
bytes of data into an array of bytes from this input stream. If
pos
equals count
, then -1
is returned to indicate end
of file. Otherwise, the number k
of bytes read is equal to the smaller of
len
and count-pos
. If k
is positive, then bytes
buffer[pos]
through buffer[pos+k-1]
are copied into
b[off]
through b[off+k-1]
in the manner performed by
System.arraycopy
. The value k
is added into pos
and
k
is returned. This read
method cannot block.
read
in class InputStream
b
- the buffer into which the data is read.off
- the start offset of the data.len
- the maximum number of bytes read.-1
if there is no
more data because the end of the stream has been reached.public long skip(long n)
n
bytes of input from this input stream. Fewer bytes might be skipped if
the end of the input stream is reached. The actual number k
of bytes to be
skipped is equal to the smaller of n
and count-pos
. The value
k
is added into pos
and k
is returned.skip
in class InputStream
n
- the number of bytes to be skipped.public int available()
count - pos
, which is the number of bytes remaining to be
read from the input buffer.available
in class InputStream
Copyright © GigaSpaces.