public interface ErrorPropagatingOutputStream
OutputStream
that's connected to an InputStream
somewhere,
which provides ability to have InputStream
report an error.Modifier and Type | Method and Description |
---|---|
void |
error(Throwable e)
Closes the stream and causes the reading
InputStream to report an error. |
void error(@CheckForNull Throwable e) throws IOException
InputStream
to report an error.
This method is somewhat like OutputStream.close()
,
in that it signals the end of a stream. In addition to what the close method does,
this method will cause the InputStream.read()
method (or any other overloaded versions) to throw an
IOException
with the given throwable as the cause.
InputStream
will report an error only after all the data that has written
before is read. IOW, the error will not magically jump over the data that was written.
This is useful to propagate error over a pipe. If used over
a channel with the remoting library that doesn't yet support this,
or if the OutputStream
isn't connecting to an InputStream
,
this method behaves exactly like OutputStream.close()
.
If OutputStream
is already closed or error state is
set, this method will be no-op.
e
- if null, this method behaves exactly like OutputStream.close()
IOException
Copyright © 2004–2022. All rights reserved.