@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 InputStream
IOException
public void close() throws IOException
close
in interface Closeable
close
in interface AutoCloseable
close
in class InputStream
IOException
public void mark(int readlimit)
mark
in class InputStream
public boolean markSupported()
markSupported
in class InputStream
public int read(byte[] b, int off, int len) throws IOException
read
in class InputStream
IOException
public int read(byte[] b) throws IOException
read
in class InputStream
IOException
public int read() throws IOException
read
in class InputStream
IOException
public void reset() throws IOException
reset
in class InputStream
IOException
public long skip(long n) throws IOException
skip
in class InputStream
IOException
public InputStream wrappedStream()
InputStream
instance, never null.Copyright © 2008–2016 JBoss, a division of Red Hat. All rights reserved.