RemoteIpFilter.XForwardedRequest (Apache Tomcat 9.0.22 API Documentation)

org.apache.catalina.filters

## Class RemoteIpFilter.XForwardedRequest

- java.lang.Object
- - javax.servlet.ServletRequestWrapper
  - - javax.servlet.http.HttpServletRequestWrapper
    - - org.apache.catalina.filters.RemoteIpFilter.XForwardedRequest

- All Implemented Interfaces:
    HttpServletRequest, ServletRequest
  Enclosing class:
    RemoteIpFilter

      public static class RemoteIpFilter.XForwardedRequest
      extends HttpServletRequestWrapper

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected java.util.Map<java.lang.String,java.util.List<java.lang.String>>` | `headers`
    `protected int` | `localPort`
    `protected java.lang.String` | `remoteAddr`
    `protected java.lang.String` | `remoteHost`
    `protected java.lang.String` | `scheme`
    `protected boolean` | `secure`
    `protected int` | `serverPort`

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

      `BASIC_AUTH, CLIENT_CERT_AUTH, DIGEST_AUTH, FORM_AUTH`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `XForwardedRequest(HttpServletRequest request)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `long` | `getDateHeader(java.lang.String name)` The default behavior of this method is to return getDateHeader(String name) on the wrapped request object.
    `java.lang.String` | `getHeader(java.lang.String name)` The default behavior of this method is to return getHeader(String name) on the wrapped request object.
    `protected java.util.Map.Entry<java.lang.String,java.util.List<java.lang.String>>` | `getHeaderEntry(java.lang.String name)`
    `java.util.Enumeration<java.lang.String>` | `getHeaderNames()` The default behavior of this method is to return getHeaderNames() on the wrapped request object.
    `java.util.Enumeration<java.lang.String>` | `getHeaders(java.lang.String name)` The default behavior of this method is to return getHeaders(String name) on the wrapped request object.
    `int` | `getIntHeader(java.lang.String name)` The default behavior of this method is to return getIntHeader(String name) on the wrapped request object.
    `int` | `getLocalPort()` The default behavior of this method is to return getLocalPort() on the wrapped request object.
    `java.lang.String` | `getRemoteAddr()` The default behavior of this method is to return getRemoteAddr() on the wrapped request object.
    `java.lang.String` | `getRemoteHost()` The default behavior of this method is to return getRemoteHost() on the wrapped request object.
    `java.lang.StringBuffer` | `getRequestURL()` The default behavior of this method is to return getRequestURL() on the wrapped request object.
    `java.lang.String` | `getScheme()` The default behavior of this method is to return getScheme() on the wrapped request object.
    `int` | `getServerPort()` The default behavior of this method is to return getServerPort() on the wrapped request object.
    `boolean` | `isSecure()` The default behavior of this method is to return isSecure() on the wrapped request object.
    `PushBuilder` | `newPushBuilder()` Obtain a builder for generating push requests.
    `void` | `removeHeader(java.lang.String name)`
    `void` | `setHeader(java.lang.String name, java.lang.String value)`
    `void` | `setLocalPort(int localPort)`
    `void` | `setRemoteAddr(java.lang.String remoteAddr)`
    `void` | `setRemoteHost(java.lang.String remoteHost)`
    `void` | `setScheme(java.lang.String scheme)`
    `void` | `setSecure(boolean secure)`
    `void` | `setServerPort(int serverPort)`

    - ### Methods inherited from class javax.servlet.http.HttpServletRequestWrapper

      `authenticate, changeSessionId, getAuthType, getContextPath, getCookies, getHttpServletMapping, getMethod, getPart, getParts, getPathInfo, getPathTranslated, getQueryString, getRemoteUser, getRequestedSessionId, getRequestURI, getServletPath, getSession, getSession, getTrailerFields, getUserPrincipal, isRequestedSessionIdFromCookie, isRequestedSessionIdFromUrl, isRequestedSessionIdFromURL, isRequestedSessionIdValid, isTrailerFieldsReady, isUserInRole, login, logout, upgrade`

    - ### Methods inherited from class javax.servlet.ServletRequestWrapper

      `getAsyncContext, getAttribute, getAttributeNames, getCharacterEncoding, getContentLength, getContentLengthLong, getContentType, getDispatcherType, getInputStream, getLocalAddr, getLocale, getLocales, getLocalName, getParameter, getParameterMap, getParameterNames, getParameterValues, getProtocol, getReader, getRealPath, getRemotePort, getRequest, getRequestDispatcher, getServerName, getServletContext, isAsyncStarted, isAsyncSupported, 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, getParameter, getParameterMap, getParameterNames, getParameterValues, getProtocol, getReader, getRealPath, getRemotePort, getRequestDispatcher, getServerName, getServletContext, isAsyncStarted, isAsyncSupported, removeAttribute, setAttribute, setCharacterEncoding, startAsync, startAsync`

- - ### Field Detail

    - #### headers

          protected final java.util.Map<java.lang.String,java.util.List<java.lang.String>> headers

    - #### localPort

          protected int localPort

    - #### remoteAddr

          protected java.lang.String remoteAddr

    - #### remoteHost

          protected java.lang.String remoteHost

    - #### scheme

          protected java.lang.String scheme

    - #### secure

          protected boolean secure

    - #### serverPort

          protected int serverPort

  - ### Constructor Detail

    - #### XForwardedRequest

          public XForwardedRequest(HttpServletRequest request)

  - ### Method Detail

    - #### getDateHeader

          public long getDateHeader(java.lang.String name)

      Description copied from class: `javax.servlet.http.HttpServletRequestWrapper`
      The default behavior of this method is to return getDateHeader(String name) on the wrapped request object.
      Specified by:
        `getDateHeader` in interface `HttpServletRequest`
      Overrides:
        `getDateHeader` in class `HttpServletRequestWrapper`
      Parameters:
        `name` - a `String` specifying the name of the header
      Returns:
        a `long` value representing the date specified in the header expressed as the number of milliseconds since January 1, 1970 GMT, or -1 if the named header was not included with the request

    - #### getHeader

          public java.lang.String getHeader(java.lang.String name)

      Description copied from class: `javax.servlet.http.HttpServletRequestWrapper`
      The default behavior of this method is to return getHeader(String name) on the wrapped request object.
      Specified by:
        `getHeader` in interface `HttpServletRequest`
      Overrides:
        `getHeader` in class `HttpServletRequestWrapper`
      Parameters:
        `name` - a `String` specifying the header name
      Returns:
        a `String` containing the value of the requested header, or `null` if the request does not have a header of that name

    - #### getHeaderEntry

          protected java.util.Map.Entry<java.lang.String,java.util.List<java.lang.String>> getHeaderEntry(java.lang.String name)

    - #### getHeaderNames

          public java.util.Enumeration<java.lang.String> getHeaderNames()

      Description copied from class: `javax.servlet.http.HttpServletRequestWrapper`
      The default behavior of this method is to return getHeaderNames() on the wrapped request object.
      Specified by:
        `getHeaderNames` in interface `HttpServletRequest`
      Overrides:
        `getHeaderNames` in class `HttpServletRequestWrapper`
      Returns:
        an enumeration of all the header names sent with this request; if the request has no headers, an empty enumeration; if the servlet container does not allow servlets to use this method, `null`

    - #### getHeaders

          public java.util.Enumeration<java.lang.String> getHeaders(java.lang.String name)

      Description copied from class: `javax.servlet.http.HttpServletRequestWrapper`
      The default behavior of this method is to return getHeaders(String name) on the wrapped request object.
      Specified by:
        `getHeaders` in interface `HttpServletRequest`
      Overrides:
        `getHeaders` in class `HttpServletRequestWrapper`
      Parameters:
        `name` - a `String` specifying the header name
      Returns:
        an `Enumeration` containing the values of the requested header. If the request does not have any headers of that name return an empty enumeration. If the container does not allow access to header information, return null

    - #### getIntHeader

          public int getIntHeader(java.lang.String name)

      Description copied from class: `javax.servlet.http.HttpServletRequestWrapper`
      The default behavior of this method is to return getIntHeader(String name) on the wrapped request object.
      Specified by:
        `getIntHeader` in interface `HttpServletRequest`
      Overrides:
        `getIntHeader` in class `HttpServletRequestWrapper`
      Parameters:
        `name` - a `String` specifying the name of a request header
      Returns:
        an integer expressing the value of the request header or -1 if the request doesn't have a header of this name

    - #### getLocalPort

          public int getLocalPort()

      Description copied from class: `javax.servlet.ServletRequestWrapper`
      The default behavior of this method is to return getLocalPort() on the wrapped request object.
      Specified by:
        `getLocalPort` in interface `ServletRequest`
      Overrides:
        `getLocalPort` in class `ServletRequestWrapper`
      Returns:
        an integer specifying the port number

    - #### getRemoteAddr

          public java.lang.String getRemoteAddr()

      Description copied from class: `javax.servlet.ServletRequestWrapper`
      The default behavior of this method is to return getRemoteAddr() on the wrapped request object.
      Specified by:
        `getRemoteAddr` in interface `ServletRequest`
      Overrides:
        `getRemoteAddr` in class `ServletRequestWrapper`
      Returns:
        a `String` containing the IP address of the client that sent the request

    - #### getRemoteHost

          public java.lang.String getRemoteHost()

      Description copied from class: `javax.servlet.ServletRequestWrapper`
      The default behavior of this method is to return getRemoteHost() on the wrapped request object.
      Specified by:
        `getRemoteHost` in interface `ServletRequest`
      Overrides:
        `getRemoteHost` in class `ServletRequestWrapper`
      Returns:
        a `String` containing the fully qualified name of the client

    - #### getScheme

          public java.lang.String getScheme()

      Description copied from class: `javax.servlet.ServletRequestWrapper`
      The default behavior of this method is to return getScheme() on the wrapped request object.
      Specified by:
        `getScheme` in interface `ServletRequest`
      Overrides:
        `getScheme` in class `ServletRequestWrapper`
      Returns:
        a `String` containing the name of the scheme used to make this request

    - #### getServerPort

          public int getServerPort()

      Description copied from class: `javax.servlet.ServletRequestWrapper`
      The default behavior of this method is to return getServerPort() on the wrapped request object.
      Specified by:
        `getServerPort` in interface `ServletRequest`
      Overrides:
        `getServerPort` in class `ServletRequestWrapper`
      Returns:
        an integer specifying the port number

    - #### isSecure

          public boolean isSecure()

      Description copied from class: `javax.servlet.ServletRequestWrapper`
      The default behavior of this method is to return isSecure() on the wrapped request object.
      Specified by:
        `isSecure` in interface `ServletRequest`
      Overrides:
        `isSecure` in class `ServletRequestWrapper`
      Returns:
        a boolean indicating if the request was made using a secure channel

    - #### removeHeader

          public void removeHeader(java.lang.String name)

    - #### setHeader

          public void setHeader(java.lang.String name,
                                java.lang.String value)

    - #### setLocalPort

          public void setLocalPort(int localPort)

    - #### setRemoteAddr

          public void setRemoteAddr(java.lang.String remoteAddr)

    - #### setRemoteHost

          public void setRemoteHost(java.lang.String remoteHost)

    - #### setScheme

          public void setScheme(java.lang.String scheme)

    - #### setSecure

          public void setSecure(boolean secure)

    - #### setServerPort

          public void setServerPort(int serverPort)

    - #### getRequestURL

          public java.lang.StringBuffer getRequestURL()

      Description copied from class: `javax.servlet.http.HttpServletRequestWrapper`
      The default behavior of this method is to return getRequestURL() on the wrapped request object.
      Specified by:
        `getRequestURL` in interface `HttpServletRequest`
      Overrides:
        `getRequestURL` in class `HttpServletRequestWrapper`
      Returns:
        a `StringBuffer` object containing the reconstructed URL

    - #### newPushBuilder

          public PushBuilder newPushBuilder()

      Description copied from class: `javax.servlet.http.HttpServletRequestWrapper`
      Obtain a builder for generating push requests. `PushBuilder` documents how this request will be used as the basis for a push request. Each call to this method will return a new instance, independent of any previous instance obtained.

      The default behavior of this method is to return `HttpServletRequest.newPushBuilder()` on the wrapped request object.

      Specified by:
        `newPushBuilder` in interface `HttpServletRequest`
      Overrides:
        `newPushBuilder` in class `HttpServletRequestWrapper`
      Returns:
        A builder that can be used to generate push requests based on this request or `null` if push is not supported. Note that even if a PushBuilder instance is returned, by the time that `PushBuilder.push()` is called, it may no longer be valid to push a request and the push request will be ignored.

Copyright © 2000-2019 Apache Software Foundation. All Rights Reserved.