# Hierarchy For Package org.apache.catalina.filters

Package Hierarchies:

- All Packages

## Class Hierarchy

- java.lang.Object
  - org.apache.catalina.filters.Constants
  - org.apache.catalina.filters.CsrfPreventionFilter.LruCache<T> (implements org.apache.catalina.filters.CsrfPreventionFilter.NonceCache<T>)
  - org.apache.catalina.filters.CsrfPreventionFilter.MimePredicate (implements java.util.function.Predicate<T>)
  - org.apache.catalina.filters.CsrfPreventionFilter.PatternPredicate (implements java.util.function.Predicate<T>)
  - org.apache.catalina.filters.CsrfPreventionFilter.PrefixPredicate (implements java.util.function.Predicate<T>)
  - org.apache.catalina.filters.CsrfPreventionFilter.SuffixPredicate (implements java.util.function.Predicate<T>)
  - org.apache.catalina.filters.ExpiresFilter.Duration
  - org.apache.catalina.filters.ExpiresFilter.ExpiresConfiguration
  - org.apache.catalina.filters.FilterBase (implements javax.servlet.Filter)
    - org.apache.catalina.filters.AddDefaultCharsetFilter
    - org.apache.catalina.filters.CsrfPreventionFilterBase
      - org.apache.catalina.filters.CsrfPreventionFilter
      - org.apache.catalina.filters.RestCsrfPreventionFilter
    - org.apache.catalina.filters.ExpiresFilter
    - org.apache.catalina.filters.FailedRequestFilter
    - org.apache.catalina.filters.HttpHeaderSecurityFilter
    - org.apache.catalina.filters.RateLimitFilter
    - org.apache.catalina.filters.RemoteCIDRFilter
    - org.apache.catalina.filters.RequestFilter
      - org.apache.catalina.filters.RemoteAddrFilter
      - org.apache.catalina.filters.RemoteHostFilter
    - org.apache.catalina.filters.SetCharacterEncodingFilter
  - javax.servlet.GenericFilter (implements javax.servlet.Filter, javax.servlet.FilterConfig, java.io.Serializable)
    - org.apache.catalina.filters.CorsFilter
    - org.apache.catalina.filters.RemoteIpFilter
    - org.apache.catalina.filters.RequestDumperFilter
    - org.apache.catalina.filters.WebdavFixFilter
  - java.io.OutputStream (implements java.io.Closeable, java.io.Flushable)
    - javax.servlet.ServletOutputStream
      - org.apache.catalina.filters.ExpiresFilter.XServletOutputStream
  - javax.servlet.ServletRequestWrapper (implements javax.servlet.ServletRequest)
    - javax.servlet.http.HttpServletRequestWrapper (implements javax.servlet.http.HttpServletRequest)
      - org.apache.catalina.filters.RemoteIpFilter.XForwardedRequest
  - javax.servlet.ServletResponseWrapper (implements javax.servlet.ServletResponse)
    - javax.servlet.http.HttpServletResponseWrapper (implements javax.servlet.http.HttpServletResponse)
      - org.apache.catalina.filters.AddDefaultCharsetFilter.ResponseWrapper
      - org.apache.catalina.filters.CsrfPreventionFilter.CsrfResponseWrapper
      - org.apache.catalina.filters.ExpiresFilter.XHttpServletResponse
  - org.apache.catalina.filters.SessionInitializerFilter (implements javax.servlet.Filter)
  - java.io.Writer (implements java.lang.Appendable, java.io.Closeable, java.io.Flushable)
    - java.io.PrintWriter
      - org.apache.catalina.filters.ExpiresFilter.XPrintWriter

## Interface Hierarchy

- java.io.Serializable
  - org.apache.catalina.filters.CsrfPreventionFilter.NonceCache<T>

## Enum Hierarchy

- java.lang.Object
  - java.lang.Enum<E> (implements java.lang.Comparable<T>, java.lang.constant.Constable, java.io.Serializable)
    - org.apache.catalina.filters.CorsFilter.CORSRequestType
    - org.apache.catalina.filters.ExpiresFilter.DurationUnit
    - org.apache.catalina.filters.ExpiresFilter.StartingPoint