Class OnCommittedResponseWrapper
java.lang.Object
javax.servlet.ServletResponseWrapper
javax.servlet.http.HttpServletResponseWrapper
org.springframework.security.web.util.OnCommittedResponseWrapper
- All Implemented Interfaces:
javax.servlet.http.HttpServletResponse,javax.servlet.ServletResponse
- Direct Known Subclasses:
SaveContextOnUpdateOrErrorResponseWrapper
public abstract class OnCommittedResponseWrapper
extends javax.servlet.http.HttpServletResponseWrapper
Base class for response wrappers which encapsulate the logic for handling an event when
the
HttpServletResponse is committed.- Since:
- 4.0.2
-
Field Summary
Fields inherited from interface javax.servlet.http.HttpServletResponse
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 Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidprotected voidInvoke this method to disable invokingonResponseCommitted()when theHttpServletResponseis committed.voidMakes sureonResponseCommitted()is invoked before calling the superclassflushBuffer()javax.servlet.ServletOutputStreamMakes sureonResponseCommitted()is invoked before calling the callinggetOutputStream().close()orgetOutputStream().flush()Makes sureonResponseCommitted()is invoked before calling thegetWriter().close()orgetWriter().flush()protected booleanReturns true ifonResponseCommitted()will be invoked when the response is committed, else false.protected abstract voidImplement the logic for handling theHttpServletResponsebeing committedfinal voidsendError(int sc) Makes sureonResponseCommitted()is invoked before calling the superclasssendError()final voidMakes sureonResponseCommitted()is invoked before calling the superclasssendError()final voidsendRedirect(String location) Makes sureonResponseCommitted()is invoked before calling the superclasssendRedirect()voidsetContentLength(int len) voidsetContentLengthLong(long len) Methods inherited from class javax.servlet.http.HttpServletResponseWrapper
addCookie, addDateHeader, addIntHeader, containsHeader, encodeRedirectUrl, encodeRedirectURL, encodeUrl, encodeURL, getHeader, getHeaderNames, getHeaders, getStatus, getTrailerFields, setDateHeader, setHeader, setIntHeader, setStatus, setStatus, setTrailerFieldsMethods inherited from class javax.servlet.ServletResponseWrapper
getBufferSize, getCharacterEncoding, getContentType, getLocale, getResponse, isCommitted, isWrapperFor, isWrapperFor, reset, resetBuffer, setBufferSize, setCharacterEncoding, setContentType, setLocale, setResponseMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface javax.servlet.ServletResponse
getBufferSize, getCharacterEncoding, getContentType, getLocale, isCommitted, reset, resetBuffer, setBufferSize, setCharacterEncoding, setContentType, setLocale
-
Constructor Details
-
OnCommittedResponseWrapper
public OnCommittedResponseWrapper(javax.servlet.http.HttpServletResponse response) - Parameters:
response- the response to be wrapped
-
-
Method Details
-
addHeader
- Specified by:
addHeaderin interfacejavax.servlet.http.HttpServletResponse- Overrides:
addHeaderin classjavax.servlet.http.HttpServletResponseWrapper
-
setContentLength
public void setContentLength(int len) - Specified by:
setContentLengthin interfacejavax.servlet.ServletResponse- Overrides:
setContentLengthin classjavax.servlet.ServletResponseWrapper
-
setContentLengthLong
public void setContentLengthLong(long len) - Specified by:
setContentLengthLongin interfacejavax.servlet.ServletResponse- Overrides:
setContentLengthLongin classjavax.servlet.ServletResponseWrapper
-
disableOnResponseCommitted
protected void disableOnResponseCommitted()Invoke this method to disable invokingonResponseCommitted()when theHttpServletResponseis committed. This can be useful in the event that Async Web Requests are made. -
isDisableOnResponseCommitted
protected boolean isDisableOnResponseCommitted()Returns true ifonResponseCommitted()will be invoked when the response is committed, else false.- Returns:
- if
onResponseCommitted()is enabled
-
onResponseCommitted
protected abstract void onResponseCommitted()Implement the logic for handling theHttpServletResponsebeing committed -
sendError
Makes sureonResponseCommitted()is invoked before calling the superclasssendError()- Specified by:
sendErrorin interfacejavax.servlet.http.HttpServletResponse- Overrides:
sendErrorin classjavax.servlet.http.HttpServletResponseWrapper- Throws:
IOException
-
sendError
Makes sureonResponseCommitted()is invoked before calling the superclasssendError()- Specified by:
sendErrorin interfacejavax.servlet.http.HttpServletResponse- Overrides:
sendErrorin classjavax.servlet.http.HttpServletResponseWrapper- Throws:
IOException
-
sendRedirect
Makes sureonResponseCommitted()is invoked before calling the superclasssendRedirect()- Specified by:
sendRedirectin interfacejavax.servlet.http.HttpServletResponse- Overrides:
sendRedirectin classjavax.servlet.http.HttpServletResponseWrapper- Throws:
IOException
-
getOutputStream
Makes sureonResponseCommitted()is invoked before calling the callinggetOutputStream().close()orgetOutputStream().flush()- Specified by:
getOutputStreamin interfacejavax.servlet.ServletResponse- Overrides:
getOutputStreamin classjavax.servlet.ServletResponseWrapper- Throws:
IOException
-
getWriter
Makes sureonResponseCommitted()is invoked before calling thegetWriter().close()orgetWriter().flush()- Specified by:
getWriterin interfacejavax.servlet.ServletResponse- Overrides:
getWriterin classjavax.servlet.ServletResponseWrapper- Throws:
IOException
-
flushBuffer
Makes sureonResponseCommitted()is invoked before calling the superclassflushBuffer()- Specified by:
flushBufferin interfacejavax.servlet.ServletResponse- Overrides:
flushBufferin classjavax.servlet.ServletResponseWrapper- Throws:
IOException
-