Class FilterRegistration

  • All Implemented Interfaces:
    jakarta.servlet.FilterRegistration, jakarta.servlet.FilterRegistration.Dynamic, jakarta.servlet.Registration, jakarta.servlet.Registration.Dynamic

    public class FilterRegistration
    extends Registration
    implements jakarta.servlet.FilterRegistration.Dynamic
    Allows customization of a Filter registered with the WebappContext.
    Since:
    2.2
    • Field Detail

      • filterClass

        protected Class<? extends jakarta.servlet.Filter> filterClass
      • filter

        protected jakarta.servlet.Filter filter
      • isAsyncSupported

        protected boolean isAsyncSupported
    • Constructor Detail

      • FilterRegistration

        protected FilterRegistration​(WebappContext ctx,
                                     String name,
                                     String filterClassName)
        Creates a new FilterRegistration associated with the specified WebappContext.
        Parameters:
        ctx - the owning WebappContext.
        name - the name of the Filter.
        filterClassName - the fully qualified class name of the Filter implementation.
      • FilterRegistration

        protected FilterRegistration​(WebappContext ctx,
                                     String name,
                                     Class<? extends jakarta.servlet.Filter> filter)
        Creates a new FilterRegistration associated with the specified WebappContext.
        Parameters:
        ctx - the owning WebappContext.
        name - name the name of the Filter.
        filter - the class of the Filter implementation
      • FilterRegistration

        protected FilterRegistration​(WebappContext ctx,
                                     String name,
                                     jakarta.servlet.Filter filter)
        Creates a new FilterRegistration associated with the specified WebappContext.
        Parameters:
        ctx - the owning WebappContext.
        name - name the name of the Filter.
        filter - the Filter instance.
    • Method Detail

      • addMappingForServletNames

        public void addMappingForServletNames​(EnumSet<jakarta.servlet.DispatcherType> dispatcherTypes,
                                              String... servletNames)
        Adds a filter mapping with the given servlet names and dispatcher types for the Filter represented by this FilterRegistration.

        Filter mappings are matched in the order in which they were added.

        If this method is called multiple times, each successive call adds to the effects of the former.

        Parameters:
        dispatcherTypes - the dispatcher types of the filter mapping, or null if the default DispatcherType.REQUEST is to be used
        servletNames - the servlet names of the filter mapping
        Throws:
        IllegalArgumentException - if servletNames is null or empty
        IllegalStateException - if the ServletContext from which this FilterRegistration was obtained has already been initialized
      • addMappingForServletNames

        public void addMappingForServletNames​(EnumSet<jakarta.servlet.DispatcherType> dispatcherTypes,
                                              boolean isMatchAfter,
                                              String... servletNames)
        Specified by:
        addMappingForServletNames in interface jakarta.servlet.FilterRegistration
      • getServletNameMappings

        public Collection<String> getServletNameMappings()
        Gets the currently available servlet name mappings of the Filter represented by this FilterRegistration.

        If permitted, any changes to the returned Collection must not affect this FilterRegistration.

        Specified by:
        getServletNameMappings in interface jakarta.servlet.FilterRegistration
        Returns:
        a (possibly empty) Collection of the currently available servlet name mappings of the Filter represented by this FilterRegistration
      • addMappingForUrlPatterns

        public void addMappingForUrlPatterns​(EnumSet<jakarta.servlet.DispatcherType> dispatcherTypes,
                                             String... urlPatterns)
        Adds a filter mapping with the given url patterns and dispatcher types for the Filter represented by this FilterRegistration.

        Filter mappings are matched in the order in which they were added.

        If this method is called multiple times, each successive call adds to the effects of the former.

        Parameters:
        dispatcherTypes - the dispatcher types of the filter mapping, or null if the default DispatcherType.REQUEST is to be used
        urlPatterns - the url patterns of the filter mapping
        Throws:
        IllegalArgumentException - if urlPatterns is null or empty
        IllegalStateException - if the ServletContext from which this FilterRegistration was obtained has already been initialized
      • addMappingForUrlPatterns

        public void addMappingForUrlPatterns​(EnumSet<jakarta.servlet.DispatcherType> dispatcherTypes,
                                             boolean isMatchAfter,
                                             String... urlPatterns)
        Specified by:
        addMappingForUrlPatterns in interface jakarta.servlet.FilterRegistration
      • getUrlPatternMappings

        public Collection<String> getUrlPatternMappings()
        Gets the currently available URL pattern mappings of the Filter represented by this FilterRegistration.

        If permitted, any changes to the returned Collection must not affect this FilterRegistration.

        Specified by:
        getUrlPatternMappings in interface jakarta.servlet.FilterRegistration
        Returns:
        a (possibly empty) Collection of the currently available URL pattern mappings of the Filter represented by this FilterRegistration
      • setAsyncSupported

        public void setAsyncSupported​(boolean isAsyncSupported)
        Specified by:
        setAsyncSupported in interface jakarta.servlet.Registration.Dynamic