Class EtagFilter

  • All Implemented Interfaces:
    javax.servlet.Filter, org.springframework.beans.factory.Aware, org.springframework.beans.factory.BeanNameAware, org.springframework.beans.factory.DisposableBean, org.springframework.beans.factory.InitializingBean, org.springframework.context.EnvironmentAware, org.springframework.core.env.EnvironmentCapable, org.springframework.web.context.ServletContextAware

    public class EtagFilter
    extends org.springframework.web.filter.ShallowEtagHeaderFilter
    Created by jvenugopal on 05-05-2015.
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static java.lang.String SKIP_ETAG  
      • Fields inherited from class org.springframework.web.filter.OncePerRequestFilter

        ALREADY_FILTERED_SUFFIX
      • Fields inherited from class org.springframework.web.filter.GenericFilterBean

        logger
    • Constructor Summary

      Constructors 
      Constructor Description
      EtagFilter()  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected boolean doesClientSupportEtag​(javax.servlet.http.HttpServletRequest request)
      To disable etag header for clients which doesn't support etag header.
      protected void doFilterInternal​(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, javax.servlet.FilterChain filterChain)  
      protected boolean isEligibleForEtag​(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, int responseStatusCode, java.io.InputStream inputStream)  
      protected boolean shouldNotFilter​(javax.servlet.http.HttpServletRequest request)  
      • Methods inherited from class org.springframework.web.filter.ShallowEtagHeaderFilter

        disableContentCaching, generateETagHeaderValue, isWriteWeakETag, setWriteWeakETag, shouldNotFilterAsyncDispatch
      • Methods inherited from class org.springframework.web.filter.OncePerRequestFilter

        doFilter, doFilterNestedErrorDispatch, getAlreadyFilteredAttributeName, isAsyncDispatch, isAsyncStarted, shouldNotFilterErrorDispatch
      • Methods inherited from class org.springframework.web.filter.GenericFilterBean

        addRequiredProperty, afterPropertiesSet, createEnvironment, destroy, getEnvironment, getFilterConfig, getFilterName, getServletContext, init, initBeanWrapper, initFilterBean, setBeanName, setEnvironment, setServletContext
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • EtagFilter

        public EtagFilter()
    • Method Detail

      • doFilterInternal

        protected void doFilterInternal​(javax.servlet.http.HttpServletRequest request,
                                        javax.servlet.http.HttpServletResponse response,
                                        javax.servlet.FilterChain filterChain)
                                 throws javax.servlet.ServletException,
                                        java.io.IOException
        Overrides:
        doFilterInternal in class org.springframework.web.filter.ShallowEtagHeaderFilter
        Throws:
        javax.servlet.ServletException
        java.io.IOException
      • shouldNotFilter

        protected boolean shouldNotFilter​(javax.servlet.http.HttpServletRequest request)
                                   throws javax.servlet.ServletException
        Overrides:
        shouldNotFilter in class org.springframework.web.filter.OncePerRequestFilter
        Throws:
        javax.servlet.ServletException
      • isEligibleForEtag

        protected boolean isEligibleForEtag​(javax.servlet.http.HttpServletRequest request,
                                            javax.servlet.http.HttpServletResponse response,
                                            int responseStatusCode,
                                            java.io.InputStream inputStream)
        Overrides:
        isEligibleForEtag in class org.springframework.web.filter.ShallowEtagHeaderFilter
      • doesClientSupportEtag

        protected boolean doesClientSupportEtag​(javax.servlet.http.HttpServletRequest request)
        To disable etag header for clients which doesn't support etag header.