@NotThreadSafe public class SelfClosingInputStream extends InputStream
InputStream implementation that wraps another stream and makes sure that InputStream.close()
is always called on the wrapped stream when there is no more content to read or when an unexpected exception occurs.| Constructor and Description |
|---|
SelfClosingInputStream(InputStream stream)
Create a self-closing
InputStream that wraps another input stream. |
| Modifier and Type | Method and Description |
|---|---|
int |
available() |
void |
close() |
int |
hashCode() |
void |
mark(int readlimit) |
boolean |
markSupported() |
int |
read() |
int |
read(byte[] b) |
int |
read(byte[] b,
int off,
int len) |
void |
reset() |
long |
skip(long n) |
String |
toString() |
InputStream |
wrappedStream()
Returns the stream that this instance wraps.
|
public SelfClosingInputStream(InputStream stream)
InputStream that wraps another input stream.stream - the wrapped InputStream; may not be null.public int available()
throws IOException
available in class InputStreamIOExceptionpublic void close()
throws IOException
close in interface Closeableclose in interface AutoCloseableclose in class InputStreamIOExceptionpublic void mark(int readlimit)
mark in class InputStreampublic boolean markSupported()
markSupported in class InputStreampublic int read(byte[] b,
int off,
int len)
throws IOException
read in class InputStreamIOExceptionpublic int read(byte[] b)
throws IOException
read in class InputStreamIOExceptionpublic int read()
throws IOException
read in class InputStreamIOExceptionpublic void reset()
throws IOException
reset in class InputStreamIOExceptionpublic long skip(long n)
throws IOException
skip in class InputStreamIOExceptionpublic InputStream wrappedStream()
InputStream instance, never null.Copyright © 2008-2014 JBoss, a division of Red Hat. All Rights Reserved.