public abstract class AbstractServletOutputStream<S> extends ServletOutputStream
Modifier and Type | Field and Description |
---|---|
protected static StringManager |
sm |
protected SocketWrapper<S> |
socketWrapper |
Constructor and Description |
---|
AbstractServletOutputStream(SocketWrapper<S> socketWrapper,
int asyncWriteBufferSize) |
Modifier and Type | Method and Description |
---|---|
void |
close() |
protected abstract void |
doClose() |
protected abstract void |
doFlush() |
protected abstract int |
doWrite(boolean block,
byte[] b,
int off,
int len)
Abstract method to be overridden by concrete implementations.
|
protected boolean |
isCloseRequired() |
boolean |
isReady()
Checks if a non-blocking write will succeed.
|
protected void |
onError(Throwable t) |
protected void |
onWritePossible() |
void |
setWriteListener(WriteListener listener)
Sets the
WriteListener for this ServletOutputStream and
thereby switches to non-blocking IO. |
void |
write(byte[] b,
int off,
int len) |
void |
write(int b) |
print, print, print, print, print, print, print, println, println, println, println, println, println, println, println
flush, write
protected static final StringManager sm
protected final SocketWrapper<S> socketWrapper
public AbstractServletOutputStream(SocketWrapper<S> socketWrapper, int asyncWriteBufferSize)
public final boolean isReady()
javax.servlet.ServletOutputStream
false
, it will cause a callback to
WriteListener.onWritePossible()
when the buffer has emptied. If
this method returns false
no further data must be written
until the contain calls WriteListener.onWritePossible()
.isReady
in class ServletOutputStream
true
if data can be written, else false
public final void setWriteListener(WriteListener listener)
javax.servlet.ServletOutputStream
WriteListener
for this ServletOutputStream
and
thereby switches to non-blocking IO. It is only valid to switch to
non-blocking IO within async processing or HTTP upgrade processing.setWriteListener
in class ServletOutputStream
listener
- The non-blocking IO write listenerprotected final boolean isCloseRequired()
public void write(int b) throws IOException
write
in class OutputStream
IOException
public void write(byte[] b, int off, int len) throws IOException
write
in class OutputStream
IOException
public void close() throws IOException
close
in interface Closeable
close
in interface AutoCloseable
close
in class OutputStream
IOException
protected final void onWritePossible() throws IOException
IOException
protected final void onError(Throwable t)
protected abstract int doWrite(boolean block, byte[] b, int off, int len) throws IOException
IOException
protected abstract void doFlush() throws IOException
IOException
protected abstract void doClose() throws IOException
IOException
Copyright © 2000-2014 Apache Software Foundation. All Rights Reserved.