public class HttpServletResponseBuffer
extends javax.servlet.http.HttpServletResponseWrapper
HttpServletResponse, allowing the output to be buffered. The passed
in Selector, will be used to determine whether to actually do the buffering
for the request.
If the response is not buffered, all operations will be delegated back to the original response, unmodified.
If the response is buffered, the content written to getOutputStream()
and getWriter() to an underlying buffer instead, available through
getBuffer(). Additionally, the 'Content-Length' header will not be passed
through to the original response.
SC_ACCEPTED, SC_BAD_GATEWAY, SC_BAD_REQUEST, SC_CONFLICT, SC_CONTINUE, SC_CREATED, SC_EXPECTATION_FAILED, SC_FORBIDDEN, SC_FOUND, SC_GATEWAY_TIMEOUT, SC_GONE, SC_HTTP_VERSION_NOT_SUPPORTED, SC_INTERNAL_SERVER_ERROR, SC_LENGTH_REQUIRED, SC_METHOD_NOT_ALLOWED, SC_MOVED_PERMANENTLY, SC_MOVED_TEMPORARILY, SC_MULTIPLE_CHOICES, SC_NO_CONTENT, SC_NON_AUTHORITATIVE_INFORMATION, SC_NOT_ACCEPTABLE, SC_NOT_FOUND, SC_NOT_IMPLEMENTED, SC_NOT_MODIFIED, SC_OK, SC_PARTIAL_CONTENT, SC_PAYMENT_REQUIRED, SC_PRECONDITION_FAILED, SC_PROXY_AUTHENTICATION_REQUIRED, SC_REQUEST_ENTITY_TOO_LARGE, SC_REQUEST_TIMEOUT, SC_REQUEST_URI_TOO_LONG, SC_REQUESTED_RANGE_NOT_SATISFIABLE, SC_RESET_CONTENT, SC_SEE_OTHER, SC_SERVICE_UNAVAILABLE, SC_SWITCHING_PROTOCOLS, SC_TEMPORARY_REDIRECT, SC_UNAUTHORIZED, SC_UNSUPPORTED_MEDIA_TYPE, SC_USE_PROXY| Constructor and Description |
|---|
HttpServletResponseBuffer(javax.servlet.http.HttpServletResponse originalResponse,
ResponseMetaData metaData,
Selector selector) |
| Modifier and Type | Method and Description |
|---|---|
protected void |
abortBufferingIfBadStatusCode(int statusCode) |
void |
addDateHeader(String name,
long value) |
void |
addHeader(String name,
String value) |
void |
addIntHeader(String name,
int value) |
boolean |
bufferingWasDisabled() |
protected void |
disableBuffering()
Disable buffering for this request.
|
protected void |
enableBuffering(String encoding)
Enable buffering for this request.
|
void |
flushBuffer() |
CharBuffer |
getBuffer()
Returns the underlying buffered content.
|
javax.servlet.ServletOutputStream |
getOutputStream()
If buffering has been enabled for this request, it
will return a stream that writes to the buffer, otherwise it will return the
original stream.
|
PrintWriter |
getWriter()
If buffering has been enabled for this request, it
will return a writer that writes to the buffer, otherwise it will return the
original writer.
|
boolean |
isBufferStreamBased()
Whether the underlying buffer was written to using
getOutputStream()
(as opposed to getWriter(). |
protected void |
preCommit()
Hook that is called just before the response is committed.
|
void |
sendError(int statusCode) |
void |
sendError(int statusCode,
String reason) |
void |
sendRedirect(String location) |
void |
setContentLength(int contentLength) |
void |
setContentType(String type)
Enable/disable buffering for this request based on the result of
Selector.shouldBufferForContentType(String, String, String). |
void |
setDateHeader(String name,
long value) |
void |
setHeader(String name,
String value) |
void |
setIntHeader(String name,
int value) |
void |
setStatus(int statusCode) |
void |
setStatus(int statusCode,
String reason) |
addCookie, containsHeader, encodeRedirectUrl, encodeRedirectURL, encodeUrl, encodeURLgetBufferSize, getCharacterEncoding, getContentType, getLocale, getResponse, isCommitted, reset, resetBuffer, setBufferSize, setCharacterEncoding, setLocale, setResponsepublic HttpServletResponseBuffer(javax.servlet.http.HttpServletResponse originalResponse,
ResponseMetaData metaData,
Selector selector)
public javax.servlet.ServletOutputStream getOutputStream()
getOutputStream in interface javax.servlet.ServletResponsegetOutputStream in class javax.servlet.ServletResponseWrapperpublic PrintWriter getWriter()
getWriter in interface javax.servlet.ServletResponsegetWriter in class javax.servlet.ServletResponseWrapperpublic CharBuffer getBuffer() throws IOException
IOExceptionpublic boolean isBufferStreamBased()
getOutputStream()
(as opposed to getWriter(). If buffering was not enabled, false will be returned.protected void enableBuffering(String encoding)
protected void disableBuffering()
public boolean bufferingWasDisabled()
protected void preCommit()
public void setContentType(String type)
Selector.shouldBufferForContentType(String, String, String).setContentType in interface javax.servlet.ServletResponsesetContentType in class javax.servlet.ServletResponseWrapperpublic void setContentLength(int contentLength)
setContentLength in interface javax.servlet.ServletResponsesetContentLength in class javax.servlet.ServletResponseWrapperpublic void flushBuffer()
throws IOException
flushBuffer in interface javax.servlet.ServletResponseflushBuffer in class javax.servlet.ServletResponseWrapperIOExceptionpublic void setHeader(String name, String value)
setHeader in interface javax.servlet.http.HttpServletResponsesetHeader in class javax.servlet.http.HttpServletResponseWrapperpublic void addHeader(String name, String value)
addHeader in interface javax.servlet.http.HttpServletResponseaddHeader in class javax.servlet.http.HttpServletResponseWrapperpublic void setIntHeader(String name, int value)
setIntHeader in interface javax.servlet.http.HttpServletResponsesetIntHeader in class javax.servlet.http.HttpServletResponseWrapperpublic void addIntHeader(String name, int value)
addIntHeader in interface javax.servlet.http.HttpServletResponseaddIntHeader in class javax.servlet.http.HttpServletResponseWrapperpublic void setDateHeader(String name, long value)
setDateHeader in interface javax.servlet.http.HttpServletResponsesetDateHeader in class javax.servlet.http.HttpServletResponseWrapperpublic void addDateHeader(String name, long value)
addDateHeader in interface javax.servlet.http.HttpServletResponseaddDateHeader in class javax.servlet.http.HttpServletResponseWrapperpublic void setStatus(int statusCode)
setStatus in interface javax.servlet.http.HttpServletResponsesetStatus in class javax.servlet.http.HttpServletResponseWrapperpublic void setStatus(int statusCode,
String reason)
setStatus in interface javax.servlet.http.HttpServletResponsesetStatus in class javax.servlet.http.HttpServletResponseWrapperpublic void sendError(int statusCode)
throws IOException
sendError in interface javax.servlet.http.HttpServletResponsesendError in class javax.servlet.http.HttpServletResponseWrapperIOExceptionpublic void sendError(int statusCode,
String reason)
throws IOException
sendError in interface javax.servlet.http.HttpServletResponsesendError in class javax.servlet.http.HttpServletResponseWrapperIOExceptionpublic void sendRedirect(String location) throws IOException
sendRedirect in interface javax.servlet.http.HttpServletResponsesendRedirect in class javax.servlet.http.HttpServletResponseWrapperIOExceptionprotected void abortBufferingIfBadStatusCode(int statusCode)
Copyright © 2015. All Rights Reserved.