Class HttpServletResponseRecorder

java.lang.Object
javax.servlet.ServletResponseWrapper
javax.servlet.http.HttpServletResponseWrapper
com.google.gerrit.httpd.HttpServletResponseRecorder
All Implemented Interfaces:
javax.servlet.http.HttpServletResponse, javax.servlet.ServletResponse

public class HttpServletResponseRecorder extends javax.servlet.http.HttpServletResponseWrapper
HttpServletResponse wrapper to allow response status code override.

Differently from the normal HttpServletResponse, this class allows multiple filters to override the response http status code.

  • 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
    HttpServletResponseRecorder(javax.servlet.http.HttpServletResponse response)
    Constructs a response recorder wrapping the given response.
  • Method Summary

    Modifier and Type
    Method
    Description
    int
     
    void
    sendError(int sc)
     
    void
    sendError(int sc, String msg)
     
    void
    sendRedirect(String location)
     
    void
    setHeader(String name, String value)
     

    Methods inherited from class javax.servlet.http.HttpServletResponseWrapper

    addCookie, addDateHeader, addHeader, addIntHeader, containsHeader, encodeRedirectUrl, encodeRedirectURL, encodeUrl, encodeURL, getHeader, getHeaderNames, getHeaders, setDateHeader, setIntHeader, setStatus, setStatus

    Methods inherited from class javax.servlet.ServletResponseWrapper

    flushBuffer, getBufferSize, getCharacterEncoding, getContentType, getLocale, getOutputStream, getResponse, getWriter, isCommitted, isWrapperFor, isWrapperFor, reset, resetBuffer, setBufferSize, setCharacterEncoding, setContentLength, setContentLengthLong, setContentType, setLocale, setResponse

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface javax.servlet.ServletResponse

    flushBuffer, getBufferSize, getCharacterEncoding, getContentType, getLocale, getOutputStream, getWriter, isCommitted, reset, resetBuffer, setBufferSize, setCharacterEncoding, setContentLength, setContentLengthLong, setContentType, setLocale
  • Constructor Details

    • HttpServletResponseRecorder

      public HttpServletResponseRecorder(javax.servlet.http.HttpServletResponse response)
      Constructs a response recorder wrapping the given response.
      Parameters:
      response - the response to be wrapped
  • Method Details

    • sendError

      public void sendError(int sc) throws IOException
      Specified by:
      sendError in interface javax.servlet.http.HttpServletResponse
      Overrides:
      sendError in class javax.servlet.http.HttpServletResponseWrapper
      Throws:
      IOException
    • sendError

      public void sendError(int sc, String msg) throws IOException
      Specified by:
      sendError in interface javax.servlet.http.HttpServletResponse
      Overrides:
      sendError in class javax.servlet.http.HttpServletResponseWrapper
      Throws:
      IOException
    • sendRedirect

      public void sendRedirect(String location) throws IOException
      Specified by:
      sendRedirect in interface javax.servlet.http.HttpServletResponse
      Overrides:
      sendRedirect in class javax.servlet.http.HttpServletResponseWrapper
      Throws:
      IOException
    • setHeader

      public void setHeader(String name, String value)
      Specified by:
      setHeader in interface javax.servlet.http.HttpServletResponse
      Overrides:
      setHeader in class javax.servlet.http.HttpServletResponseWrapper
    • getStatus

      public int getStatus()
      Specified by:
      getStatus in interface javax.servlet.http.HttpServletResponse
      Overrides:
      getStatus in class javax.servlet.http.HttpServletResponseWrapper