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.HttpServletResponseWrapperBase class for response wrappers which encapsulate the logic for handling an event when theHttpServletResponseis 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 Constructor Description OnCommittedResponseWrapper(javax.servlet.http.HttpServletResponse response)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description voidaddHeader(java.lang.String name, java.lang.String value)protected voiddisableOnResponseCommitted()Invoke this method to disable invokingonResponseCommitted()when theHttpServletResponseis committed.voidflushBuffer()Makes sureonResponseCommitted()is invoked before calling the superclassflushBuffer()javax.servlet.ServletOutputStreamgetOutputStream()Makes sureonResponseCommitted()is invoked before calling the callinggetOutputStream().close()orgetOutputStream().flush()java.io.PrintWritergetWriter()Makes sureonResponseCommitted()is invoked before calling thegetWriter().close()orgetWriter().flush()protected booleanisDisableOnResponseCommitted()Returns true ifonResponseCommitted()will be invoked when the response is committed, else false.protected abstract voidonResponseCommitted()Implement the logic for handling theHttpServletResponsebeing committedvoidsendError(int sc)Makes sureonResponseCommitted()is invoked before calling the superclasssendError()voidsendError(int sc, java.lang.String msg)Makes sureonResponseCommitted()is invoked before calling the superclasssendError()voidsendRedirect(java.lang.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, setTrailerFields
-
Methods inherited from class javax.servlet.ServletResponseWrapper
getBufferSize, getCharacterEncoding, getContentType, getLocale, getResponse, isCommitted, isWrapperFor, isWrapperFor, reset, resetBuffer, setBufferSize, setCharacterEncoding, setContentType, setLocale, setResponse
-
-
-
-
Method Detail
-
addHeader
public void addHeader(java.lang.String name, java.lang.String value)- 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
public final void sendError(int sc) throws java.io.IOExceptionMakes sureonResponseCommitted()is invoked before calling the superclasssendError()- Specified by:
sendErrorin interfacejavax.servlet.http.HttpServletResponse- Overrides:
sendErrorin classjavax.servlet.http.HttpServletResponseWrapper- Throws:
java.io.IOException
-
sendError
public final void sendError(int sc, java.lang.String msg) throws java.io.IOExceptionMakes sureonResponseCommitted()is invoked before calling the superclasssendError()- Specified by:
sendErrorin interfacejavax.servlet.http.HttpServletResponse- Overrides:
sendErrorin classjavax.servlet.http.HttpServletResponseWrapper- Throws:
java.io.IOException
-
sendRedirect
public final void sendRedirect(java.lang.String location) throws java.io.IOExceptionMakes sureonResponseCommitted()is invoked before calling the superclasssendRedirect()- Specified by:
sendRedirectin interfacejavax.servlet.http.HttpServletResponse- Overrides:
sendRedirectin classjavax.servlet.http.HttpServletResponseWrapper- Throws:
java.io.IOException
-
getOutputStream
public javax.servlet.ServletOutputStream getOutputStream() throws java.io.IOExceptionMakes sureonResponseCommitted()is invoked before calling the callinggetOutputStream().close()orgetOutputStream().flush()- Specified by:
getOutputStreamin interfacejavax.servlet.ServletResponse- Overrides:
getOutputStreamin classjavax.servlet.ServletResponseWrapper- Throws:
java.io.IOException
-
getWriter
public java.io.PrintWriter getWriter() throws java.io.IOExceptionMakes sureonResponseCommitted()is invoked before calling thegetWriter().close()orgetWriter().flush()- Specified by:
getWriterin interfacejavax.servlet.ServletResponse- Overrides:
getWriterin classjavax.servlet.ServletResponseWrapper- Throws:
java.io.IOException
-
flushBuffer
public void flushBuffer() throws java.io.IOExceptionMakes sureonResponseCommitted()is invoked before calling the superclassflushBuffer()- Specified by:
flushBufferin interfacejavax.servlet.ServletResponse- Overrides:
flushBufferin classjavax.servlet.ServletResponseWrapper- Throws:
java.io.IOException
-
-