Class MutableHttpServletRequest

  • All Implemented Interfaces:
    javax.servlet.http.HttpServletRequest, javax.servlet.ServletRequest
    Direct Known Subclasses:
    GeoserverAuthHeaderRequest

    public class MutableHttpServletRequest
    extends javax.servlet.http.HttpServletRequestWrapper
    An implementation of HttpServletRequestWrapper.
    Author:
    Daniel Koch
    See Also:
    This stackoverflow discussion
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static String DEFAULT_CHARSET  
      • Fields inherited from interface javax.servlet.http.HttpServletRequest

        BASIC_AUTH, CLIENT_CERT_AUTH, DIGEST_AUTH, FORM_AUTH
    • Constructor Summary

      Constructors 
      Constructor Description
      MutableHttpServletRequest​(javax.servlet.http.HttpServletRequest request)  
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void addParameter​(String key, String value)  
      void addParameter​(String key, String[] value)  
      String getHeader​(String name)  
      javax.servlet.ServletInputStream getInputStream()  
      String getParameter​(String key)  
      String getParameterIgnoreCase​(String name)
      Get a parameter by name, ignoring case.
      Map<String,​String[]> getParameterMap()  
      BufferedReader getReader()  
      static String getRequestParameterValue​(javax.servlet.http.HttpServletRequest httpServletRequest, String parameter)  
      static String getRequestParameterValue​(javax.servlet.http.HttpServletRequest httpServletRequest, String[] keys)  
      String getRequestURI()  
      void removeHeader​(String key)  
      void removeParameter​(String key)  
      void setHeader​(String key, String value)  
      void setInputStream​(InputStream stream)
      Set the cachedInputStream as a copy of passed InputStream
      void setInputStream​(String body)
      Set the cachedInputStream as a copy of UTF-8 encoded ByteArrayInputStream
      void setParameter​(String key, String value)  
      void setParameter​(String key, String[] value)  
      void setRequestURI​(String url)  
      void setRequestURI​(URI uri)  
      • Methods inherited from class javax.servlet.http.HttpServletRequestWrapper

        authenticate, changeSessionId, getAuthType, getContextPath, getCookies, getDateHeader, getHeaderNames, getHeaders, getHttpServletMapping, getIntHeader, getMethod, getPart, getParts, getPathInfo, getPathTranslated, getQueryString, getRemoteUser, getRequestedSessionId, getRequestURL, getServletPath, getSession, getSession, getTrailerFields, getUserPrincipal, isRequestedSessionIdFromCookie, isRequestedSessionIdFromUrl, isRequestedSessionIdFromURL, isRequestedSessionIdValid, isTrailerFieldsReady, isUserInRole, login, logout, newPushBuilder, upgrade
      • Methods inherited from class javax.servlet.ServletRequestWrapper

        getAsyncContext, getAttribute, getAttributeNames, getCharacterEncoding, getContentLength, getContentLengthLong, getContentType, getDispatcherType, getLocalAddr, getLocale, getLocales, getLocalName, getLocalPort, getParameterNames, getParameterValues, getProtocol, getRealPath, getRemoteAddr, getRemoteHost, getRemotePort, getRequest, getRequestDispatcher, getScheme, getServerName, getServerPort, getServletContext, isAsyncStarted, isAsyncSupported, isSecure, isWrapperFor, isWrapperFor, removeAttribute, setAttribute, setCharacterEncoding, setRequest, startAsync, startAsync
      • Methods inherited from interface javax.servlet.ServletRequest

        getAsyncContext, getAttribute, getAttributeNames, getCharacterEncoding, getContentLength, getContentLengthLong, getContentType, getDispatcherType, getLocalAddr, getLocale, getLocales, getLocalName, getLocalPort, getParameterNames, getParameterValues, getProtocol, getRealPath, getRemoteAddr, getRemoteHost, getRemotePort, getRequestDispatcher, getScheme, getServerName, getServerPort, getServletContext, isAsyncStarted, isAsyncSupported, isSecure, removeAttribute, setAttribute, setCharacterEncoding, startAsync, startAsync
    • Constructor Detail

      • MutableHttpServletRequest

        public MutableHttpServletRequest​(javax.servlet.http.HttpServletRequest request)
        Parameters:
        request -
    • Method Detail

      • getRequestURI

        public String getRequestURI()
        Specified by:
        getRequestURI in interface javax.servlet.http.HttpServletRequest
        Overrides:
        getRequestURI in class javax.servlet.http.HttpServletRequestWrapper
      • setRequestURI

        public void setRequestURI​(String url)
        Parameters:
        url - The URI to set as instance of String
      • setRequestURI

        public void setRequestURI​(URI uri)
        Parameters:
        uri - The URI to set as instance of URI
      • setParameter

        public void setParameter​(String key,
                                 String[] value)
        Parameters:
        key -
        value -
      • setParameter

        public void setParameter​(String key,
                                 String value)
        Parameters:
        key -
        value -
      • setHeader

        public void setHeader​(String key,
                              String value)
        Parameters:
        key - The header name (without a trailing colon `:`)
        value - The header value
      • addParameter

        public void addParameter​(String key,
                                 String[] value)
        Parameters:
        key -
        value -
      • addParameter

        public void addParameter​(String key,
                                 String value)
        Parameters:
        key -
        value -
      • removeParameter

        public void removeParameter​(String key)
        Parameters:
        key -
      • removeHeader

        public void removeHeader​(String key)
        Parameters:
        key -
      • getParameter

        public String getParameter​(String key)
        Specified by:
        getParameter in interface javax.servlet.ServletRequest
        Overrides:
        getParameter in class javax.servlet.ServletRequestWrapper
      • getParameterMap

        public Map<String,​String[]> getParameterMap()
        Specified by:
        getParameterMap in interface javax.servlet.ServletRequest
        Overrides:
        getParameterMap in class javax.servlet.ServletRequestWrapper
      • getHeader

        public String getHeader​(String name)
        Specified by:
        getHeader in interface javax.servlet.http.HttpServletRequest
        Overrides:
        getHeader in class javax.servlet.http.HttpServletRequestWrapper
      • getInputStream

        public javax.servlet.ServletInputStream getInputStream()
                                                        throws IOException
        Specified by:
        getInputStream in interface javax.servlet.ServletRequest
        Overrides:
        getInputStream in class javax.servlet.ServletRequestWrapper
        Throws:
        IOException
      • setInputStream

        public void setInputStream​(InputStream stream)
        Set the cachedInputStream as a copy of passed InputStream
        Parameters:
        stream - The InputStream to set (copy)
      • getReader

        public BufferedReader getReader()
                                 throws IOException
        Specified by:
        getReader in interface javax.servlet.ServletRequest
        Overrides:
        getReader in class javax.servlet.ServletRequestWrapper
        Throws:
        IOException
      • getParameterIgnoreCase

        public String getParameterIgnoreCase​(String name)
        Get a parameter by name, ignoring case.
        Parameters:
        name - the parameter to get
        Returns:
        a comma separated list of parameter values