net.i2p.servlet.filters

## Class XSSRequestWrapper

- java.lang.Object
- - javax.servlet.ServletRequestWrapper
  - - javax.servlet.http.HttpServletRequestWrapper
    - - net.i2p.servlet.filters.XSSRequestWrapper

- All Implemented Interfaces:
    HttpServletRequest, ServletRequest

      public class XSSRequestWrapper
      extends HttpServletRequestWrapper

  Request wrapper to prevent XSS attacks.

- - ### Field Summary

    - ### Fields inherited from interface javax.servlet.http.HttpServletRequest

      `BASIC_AUTH, CLIENT_CERT_AUTH, DIGEST_AUTH, FORM_AUTH`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `XSSRequestWrapper(HttpServletRequest servletRequest)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `String` | `getHeader(String name)`
    `String` | `getParameter(String parameter)` Parameter names starting with "nofilter_" will not be filtered.
    `Map<String,String[]>` | `getParameterMap()` Parameter names starting with "nofilter_" will not be filtered.
    `String[]` | `getParameterValues(String parameter)` Parameter names starting with "nofilter_" will not be filtered.

    - ### 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, 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, getParameterNames, 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 class java.lang.Object

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

    - ### Methods inherited from interface javax.servlet.ServletRequest

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

- - ### Constructor Detail

    - #### XSSRequestWrapper

          public XSSRequestWrapper(HttpServletRequest servletRequest)

  - ### Method Detail

    - #### getHeader

          public String getHeader(String name)

      Specified by:
        `getHeader` in interface `HttpServletRequest`
      Overrides:
        `getHeader` in class `HttpServletRequestWrapper`

    - #### getParameter

          public String getParameter(String parameter)

      Parameter names starting with "nofilter_" will not be filtered.
      Specified by:
        `getParameter` in interface `ServletRequest`
      Overrides:
        `getParameter` in class `ServletRequestWrapper`

    - #### getParameterMap

          public Map<String,String[]> getParameterMap()

      Parameter names starting with "nofilter_" will not be filtered.
      Specified by:
        `getParameterMap` in interface `ServletRequest`
      Overrides:
        `getParameterMap` in class `ServletRequestWrapper`

    - #### getParameterValues

          public String[] getParameterValues(String parameter)

      Parameter names starting with "nofilter_" will not be filtered.
      Specified by:
        `getParameterValues` in interface `ServletRequest`
      Overrides:
        `getParameterValues` in class `ServletRequestWrapper`