public class BufferedResponseHandler extends HandlerWrapper
A Handler that can apply a HttpOutput.Interceptor
mechanism to buffer the entire response content until the output is closed.
This allows the commit to be delayed until the response is complete and thus
headers and response status can be changed while writing the body.
Note that the decision to buffer is influenced by the headers and status at the first write, and thus subsequent changes to those headers will not influence the decision to buffer or not.
Note also that there are no memory limits to the size of the buffer, thus this handler can represent an unbounded memory commitment if the content generated can also be unbounded.
AbstractLifeCycle.AbstractLifeCycleListener
LifeCycle.Listener
Container.InheritedListener, Container.Listener
_handler
Constructor and Description |
---|
BufferedResponseHandler() |
Modifier and Type | Method and Description |
---|---|
IncludeExclude<String> |
getMethodIncludeExclude() |
IncludeExclude<String> |
getMimeIncludeExclude() |
IncludeExclude<String> |
getPathIncludeExclude() |
void |
handle(String target,
Request baseRequest,
HttpServletRequest request,
HttpServletResponse response)
Handle a request.
|
protected boolean |
isMimeTypeBufferable(String mimetype) |
protected boolean |
isPathBufferable(String requestURI) |
destroy, expandChildren, getHandler, getHandlers, insertHandler, setHandler
expandHandler, findContainerOf, getChildHandlerByClass, getChildHandlers, getChildHandlersByClass, setServer
doStart, doStop, dumpThis, getServer
addBean, addBean, addBean, addEventListener, addManaged, contains, dump, dump, dump, dump, dump, dumpBeans, dumpObject, dumpStdErr, getBean, getBeans, getBeans, isManaged, manage, removeBean, removeBeans, removeEventListener, setBeans, setStopTimeout, start, stop, unmanage, updateBean, updateBean, updateBeans
addLifeCycleListener, getState, getState, getStopTimeout, isFailed, isRunning, isStarted, isStarting, isStopped, isStopping, removeLifeCycleListener, start, stop
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
addLifeCycleListener, isFailed, isRunning, isStarted, isStarting, isStopped, isStopping, removeLifeCycleListener, start, stop
public IncludeExclude<String> getMethodIncludeExclude()
public IncludeExclude<String> getPathIncludeExclude()
public IncludeExclude<String> getMimeIncludeExclude()
public void handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException
Handler
handle
in interface Handler
handle
in class HandlerWrapper
target
- The target of the request - either a URI or a name.baseRequest
- The original unwrapped request object.request
- The request either as the Request
object or a wrapper of that request. The
HttpConnection.getCurrentConnection()
.getHttpChannel()
.getRequest()
method can be used access the Request object if required.response
- The response as the Response
object or a wrapper of that request. The
HttpConnection.getCurrentConnection()
.getHttpChannel()
.getResponse()
method can be used access the Response object if required.IOException
- if unable to handle the request or response processingServletException
- if unable to handle the request or response due to underlying servlet issueHandlerWrapper.handle(java.lang.String, org.eclipse.jetty.server.Request, javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)
protected boolean isMimeTypeBufferable(String mimetype)
protected boolean isPathBufferable(String requestURI)
Copyright © 1995-2016 Webtide. All Rights Reserved.