public abstract class FilteredInputStream extends FilterInputStream
It is an alternative base class to FilterInputStream to increase re-usability, because FilterInputStream changes the methods being called, such as read(byte[]) to read(byte[], int, int).
in| Constructor and Description |
|---|
FilteredInputStream(InputStream in)
Constructs a new FilteredInputStream that delegates to the specified
InputStream. |
| Modifier and Type | Method and Description |
|---|---|
protected void |
afterRead(int n)
Invoked by the read methods after the proxied call has returned
successfully.
|
int |
available()
Invokes the delegate's
available() method. |
protected void |
beforeRead(int n)
Invoked by the read methods before the call is proxied.
|
void |
close()
Invokes the delegate's
close() method. |
void |
mark(int readlimit)
Invokes the delegate's
mark(int) method. |
boolean |
markSupported()
Invokes the delegate's
markSupported() method. |
protected void |
onThrowable(Throwable t)
Handle any Throwable thrown; by default, throws the given exception.
|
int |
read()
Invokes the delegate's
read() method. |
int |
read(byte[] bts)
Invokes the delegate's
read(byte[]) method. |
int |
read(byte[] bts,
int off,
int len)
Invokes the delegate's
read(byte[], int, int) method. |
void |
reset()
Invokes the delegate's
reset() method. |
long |
skip(long ln)
Invokes the delegate's
skip(long) method. |
public FilteredInputStream(InputStream in)
InputStream.in - the InputStream to delegate toprotected void afterRead(int n)
throws IOException
Subclasses can override this method to add common post-processing functionality without having to override all the read methods. The default implementation does nothing.
Note this method is not called from skip(long) or
reset(). You need to explicitly override those methods if
you want to add post-processing steps also to them.
n - number of bytes read, or -1 if the end of stream was reachedIOException - if the post-processing failspublic int available()
throws IOException
available() method.available in class FilterInputStreamIOException - if an I/O error occurs.protected void beforeRead(int n)
throws IOException
read()
method, buffer length for read(byte[]), etc.) is given as
an argument.
Subclasses can override this method to add common pre-processing functionality without having to override all the read methods. The default implementation does nothing.
Note this method is not called from skip(long) or
reset(). You need to explicitly override those methods if
you want to add pre-processing steps also to them.
n - number of bytes that the caller asked to be readIOException - if the pre-processing failspublic void close()
throws IOException
close() method.close in interface Closeableclose in interface AutoCloseableclose in class FilterInputStreamIOException - if an I/O error occurs.protected void onThrowable(Throwable t) throws IOException
This method provides a point to implement custom exception handling. The default behavior is to re-throw the exception.
t - The IOException thrownIOException - if an I/O error occurs.public void mark(int readlimit)
mark(int) method.mark in class FilterInputStreamreadlimit - read ahead limitpublic boolean markSupported()
markSupported() method.markSupported in class FilterInputStreampublic int read()
throws IOException
read() method.read in class FilterInputStreamIOException - if an I/O error occurs.public int read(byte[] bts)
throws IOException
read(byte[]) method.read in class FilterInputStreambts - the buffer to read the bytes intoIOException - if an I/O error occurs.public int read(byte[] bts,
int off,
int len)
throws IOException
read(byte[], int, int) method.read in class FilterInputStreambts - the buffer to read the bytes intooff - The start offsetlen - The number of bytes to readIOException - if an I/O error occurs.public void reset()
throws IOException
reset() method.reset in class FilterInputStreamIOException - if an I/O error occurs.public long skip(long ln)
throws IOException
skip(long) method.skip in class FilterInputStreamln - the number of bytes to skipIOException - if an I/O error occurs.Copyright © 2014–2024 jsonwebtoken.io. All rights reserved.