public abstract class LimitedInputStream extends FilterInputStream implements Closeable
in
Constructor and Description |
---|
LimitedInputStream(InputStream inputStream,
long pSizeMax)
Creates a new instance.
|
Modifier and Type | Method and Description |
---|---|
void |
close()
Closes this input stream and releases any system resources
associated with the stream.
|
boolean |
isClosed()
Returns, whether this stream is already closed.
|
protected abstract void |
raiseError(long pSizeMax,
long pCount)
Called to indicate, that the input streams limit has
been exceeded.
|
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 from this input stream
into an array of bytes. |
available, mark, markSupported, read, reset, skip
public LimitedInputStream(InputStream inputStream, long pSizeMax)
inputStream
- The input stream, which shall be limited.pSizeMax
- The limit; no more than this number of bytes
shall be returned by the source stream.protected abstract void raiseError(long pSizeMax, long pCount) throws IOException
pSizeMax
- The input streams limit, in bytes.pCount
- The actual number of bytes.IOException
- The called method is expected
to raise an IOException.public int read() throws IOException
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 method blocks until input data
is available, the end of the stream is detected, or an exception
is thrown.
This method
simply performs in.read()
and returns the result.
read
in class FilterInputStream
-1
if the end of the
stream is reached.IOException
- if an I/O error occurs.FilterInputStream.in
public int read(byte[] b, int off, int len) throws IOException
len
bytes of data from this input stream
into an array of bytes. If len
is not zero, the method
blocks until some input is available; otherwise, no
bytes are read and 0
is returned.
This method simply performs in.read(b, off, len)
and returns the result.
read
in class FilterInputStream
b
- the buffer into which the data is read.off
- The start offset in the destination array
b
.len
- the maximum number of bytes read.-1
if there is no more data because the end of
the stream has been reached.NullPointerException
- If b
is null
.IndexOutOfBoundsException
- If off
is negative,
len
is negative, or len
is greater than
b.length - off
IOException
- if an I/O error occurs.FilterInputStream.in
public boolean isClosed() throws IOException
IOException
- An I/O error occurred.public void close() throws IOException
in.close()
.close
in interface Closeable
close
in interface AutoCloseable
close
in class FilterInputStream
IOException
- if an I/O error occurs.FilterInputStream.in
Copyright © 2000-2014 Apache Software Foundation. All Rights Reserved.