Class CookieBufferingFilter.CookieBufferingHttpServletResponseProxy

  • All Implemented Interfaces:
    javax.servlet.http.HttpServletResponse, javax.servlet.ServletResponse
    Enclosing class:
    CookieBufferingFilter

    private class CookieBufferingFilter.CookieBufferingHttpServletResponseProxy
    extends javax.servlet.http.HttpServletResponseWrapper
    An implementation of HttpServletResponse which buffers added cookies to ensure only a single cookie of a given name is eventually set.
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private Map<String,​javax.servlet.http.Cookie> cookieMap
      Map of delayed cookie additions.
      • 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
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void addCookie​(javax.servlet.http.Cookie cookie)
      protected void dumpCookies()
      Transfer cookies added into the real response.
      protected Map<String,​javax.servlet.http.Cookie> getCookies()
      Get the map of cookies that will be set.
      javax.servlet.ServletOutputStream getOutputStream()
      PrintWriter getWriter()
      void sendError​(int sc)
      void sendError​(int sc, String msg)
      void sendRedirect​(String location)
      • Methods inherited from class javax.servlet.http.HttpServletResponseWrapper

        addDateHeader, addHeader, addIntHeader, containsHeader, encodeRedirectUrl, encodeRedirectURL, encodeUrl, encodeURL, getHeader, getHeaderNames, getHeaders, getStatus, setDateHeader, setHeader, setIntHeader, setStatus, setStatus
      • Methods inherited from class javax.servlet.ServletResponseWrapper

        flushBuffer, getBufferSize, getCharacterEncoding, getContentType, getLocale, getResponse, isCommitted, isWrapperFor, isWrapperFor, reset, resetBuffer, setBufferSize, setCharacterEncoding, setContentLength, setContentLengthLong, setContentType, setLocale, setResponse
      • Methods inherited from interface javax.servlet.ServletResponse

        flushBuffer, getBufferSize, getCharacterEncoding, getContentType, getLocale, isCommitted, reset, resetBuffer, setBufferSize, setCharacterEncoding, setContentLength, setContentLengthLong, setContentType, setLocale
    • Field Detail

      • cookieMap

        @Nonnull
        @NonnullElements
        private Map<String,​javax.servlet.http.Cookie> cookieMap
        Map of delayed cookie additions.
    • Constructor Detail

      • CookieBufferingHttpServletResponseProxy

        public CookieBufferingHttpServletResponseProxy​(@Nonnull
                                                       javax.servlet.http.HttpServletResponse response)
        Constructor.
        Parameters:
        response - the response to delegate to
    • Method Detail

      • addCookie

        public void addCookie​(javax.servlet.http.Cookie cookie)
        Specified by:
        addCookie in interface javax.servlet.http.HttpServletResponse
        Overrides:
        addCookie in class javax.servlet.http.HttpServletResponseWrapper
      • getCookies

        @Nonnull
        @NonnullElements
        @Live
        protected Map<String,​javax.servlet.http.Cookie> getCookies()
        Get the map of cookies that will be set.
        Returns:
        map of cookies to be set
      • getOutputStream

        public javax.servlet.ServletOutputStream getOutputStream()
                                                          throws IOException
        Specified by:
        getOutputStream in interface javax.servlet.ServletResponse
        Overrides:
        getOutputStream in class javax.servlet.ServletResponseWrapper
        Throws:
        IOException
      • getWriter

        public PrintWriter getWriter()
                              throws IOException
        Specified by:
        getWriter in interface javax.servlet.ServletResponse
        Overrides:
        getWriter in class javax.servlet.ServletResponseWrapper
        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
      • 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
      • 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
      • dumpCookies

        protected void dumpCookies()
        Transfer cookies added into the real response.