Class HttpServletRequestWithModifiedParams

  • All Implemented Interfaces:
    javax.servlet.http.HttpServletRequest, javax.servlet.ServletRequest

    public class HttpServletRequestWithModifiedParams
    extends javax.servlet.http.HttpServletRequestWrapper
    HTTP servlet request that wraps another servlet request, but with a changed parameter map.
    Since:
    7.0.0
    Author:
    XIMA MEDIA GmbH
    • Field Summary

      • Fields inherited from interface javax.servlet.http.HttpServletRequest

        BASIC_AUTH, CLIENT_CERT_AUTH, DIGEST_AUTH, FORM_AUTH
    • Constructor Summary

      Constructors 
      Constructor Description
      HttpServletRequestWithModifiedParams​(javax.servlet.http.HttpServletRequest wrapped, Map<String,​String[]> newRequestMap)
      A new request wrapper that delegated to the given request with the exception that it uses the given request map instead of the original one.
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      static javax.servlet.http.HttpServletRequest filteredWhitelist​(javax.servlet.http.HttpServletRequest req, Set<String> whitelist)
      Creates a wrapped servlet request view with all parameters names not in the whitelist removed.
      String getParameter​(String name)  
      Map<String,​String[]> getParameterMap()  
      Enumeration<String> getParameterNames()  
      String[] getParameterValues​(String name)  
      • Methods inherited from class javax.servlet.http.HttpServletRequestWrapper

        authenticate, changeSessionId, getAuthType, getContextPath, getCookies, getDateHeader, getHeader, getHeaderNames, getHeaders, getHttpServletMapping, getIntHeader, getMethod, getPart, getParts, getPathInfo, getPathTranslated, getQueryString, getRemoteUser, getRequestedSessionId, getRequestURI, 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, getInputStream, getLocalAddr, getLocale, getLocales, getLocalName, getLocalPort, getProtocol, getReader, 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, getInputStream, getLocalAddr, getLocale, getLocales, getLocalName, getLocalPort, getProtocol, getReader, getRealPath, getRemoteAddr, getRemoteHost, getRemotePort, getRequestDispatcher, getScheme, getServerName, getServerPort, getServletContext, isAsyncStarted, isAsyncSupported, isSecure, removeAttribute, setAttribute, setCharacterEncoding, startAsync, startAsync
    • Constructor Detail

      • HttpServletRequestWithModifiedParams

        public HttpServletRequestWithModifiedParams​(javax.servlet.http.HttpServletRequest wrapped,
                                                    Map<String,​String[]> newRequestMap)
        A new request wrapper that delegated to the given request with the exception that it uses the given request map instead of the original one.
        Parameters:
        wrapped - Underlying HTTP request.
        newRequestMap - New request parameter map.
    • Method Detail

      • getParameter

        public String getParameter​(String name)
        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
      • getParameterNames

        public Enumeration<String> getParameterNames()
        Specified by:
        getParameterNames in interface javax.servlet.ServletRequest
        Overrides:
        getParameterNames in class javax.servlet.ServletRequestWrapper
      • getParameterValues

        public String[] getParameterValues​(String name)
        Specified by:
        getParameterValues in interface javax.servlet.ServletRequest
        Overrides:
        getParameterValues in class javax.servlet.ServletRequestWrapper
      • filteredWhitelist

        public static javax.servlet.http.HttpServletRequest filteredWhitelist​(javax.servlet.http.HttpServletRequest req,
                                                                              Set<String> whitelist)
        Creates a wrapped servlet request view with all parameters names not in the whitelist removed. The original given request is NOT modified.
        Parameters:
        req - Original servlet request.
        whitelist - Set of allowed parameter names.
        Returns:
        A wrapped servlet request view with only the whitelisted request parameters