Class HttpServletResponseWrapper.DeferredOutputStream
java.lang.Object
java.io.OutputStream
org.jboss.resteasy.spi.AsyncOutputStream
org.jboss.resteasy.plugins.server.servlet.HttpServletResponseWrapper.DeferredOutputStream
- All Implemented Interfaces:
WriteListener,Closeable,Flushable,AutoCloseable,EventListener
- Enclosing class:
- HttpServletResponseWrapper
protected class HttpServletResponseWrapper.DeferredOutputStream
extends AsyncOutputStream
implements WriteListener
RESTEASY-684 wants to defer access to outputstream until a write happens
Note that all locking is on this and should remain that way to avoid deadlocks on consumers of this
stream.
-
Method Summary
Modifier and TypeMethodDescriptionFlushes this async output stream.asyncWrite(byte[] bytes, int offset, int length) Writes to this async output stream.voidclose()voidflush()voidInvoked when an error occurs writing data using the non-blocking APIs.voidWhen an instance of the WriteListener is registered with aServletOutputStream, this method will be invoked by the container the first time when it is possible to write data.voidwrite(byte[] bytes) voidwrite(byte[] bytes, int i, int i1) voidwrite(int i) Methods inherited from class org.jboss.resteasy.spi.AsyncOutputStream
asyncWriteMethods inherited from class java.io.OutputStream
nullOutputStream
-
Method Details
-
write
- Specified by:
writein classOutputStream- Throws:
IOException
-
write
- Overrides:
writein classOutputStream- Throws:
IOException
-
write
- Overrides:
writein classOutputStream- Throws:
IOException
-
flush
- Specified by:
flushin interfaceFlushable- Overrides:
flushin classOutputStream- Throws:
IOException
-
close
- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable- Overrides:
closein classOutputStream- Throws:
IOException
-
asyncFlush
Description copied from class:AsyncOutputStreamFlushes this async output stream.- Specified by:
asyncFlushin classAsyncOutputStream- Returns:
- a
CompletionStagenotified on completion of the flush operation.
-
asyncWrite
Description copied from class:AsyncOutputStreamWrites to this async output stream.- Specified by:
asyncWritein classAsyncOutputStream- Parameters:
bytes- the bytes to writeoffset- the offset from which to start writing in the given byte array.length- the number of bytes to write from the given byte array- Returns:
- a
CompletionStagenotified on completion of the write operation.
-
onWritePossible
public void onWritePossible()Description copied from interface:WriteListenerWhen an instance of the WriteListener is registered with aServletOutputStream, this method will be invoked by the container the first time when it is possible to write data. Subsequently the container will invoke this method if and only if theServletOutputStream.isReady()method has been called and has returned a value offalseand a write operation has subsequently become possible.- Specified by:
onWritePossiblein interfaceWriteListener
-
onError
Description copied from interface:WriteListenerInvoked when an error occurs writing data using the non-blocking APIs.- Specified by:
onErrorin interfaceWriteListener- Parameters:
t- the throwable to indicate why the write operation failed
-