Class PathMatchingFilterChainResolver

    • Method Detail

      • getPathMatcher

        public PatternMatcher getPathMatcher()
        Returns the PatternMatcher used when determining if an incoming request's path matches a configured filter chain. Unless overridden, the default implementation is an AntPathMatcher.
        Returns:
        the PatternMatcher used when determining if an incoming request's path matches a configured filter chain.
      • setPathMatcher

        public void setPathMatcher​(PatternMatcher pathMatcher)
        Sets the PatternMatcher used when determining if an incoming request's path matches a configured filter chain. Unless overridden, the default implementation is an AntPathMatcher.
        Parameters:
        pathMatcher - the PatternMatcher used when determining if an incoming request's path matches a configured filter chain.
      • getChain

        public FilterChain getChain​(ServletRequest request,
                                    ServletResponse response,
                                    FilterChain originalChain)
        Description copied from interface: FilterChainResolver
        Returns the filter chain that should be executed for the given request, or null if the original chain should be used.

        This method allows a implementation to define arbitrary security Filter chains for any given request or URL pattern.

        Specified by:
        getChain in interface FilterChainResolver
        Parameters:
        request - the incoming ServletRequest
        response - the outgoing ServletResponse
        originalChain - the original FilterChain intercepted by the ShiroFilter implementation.
        Returns:
        the filter chain that should be executed for the given request, or null if the original chain should be used.
      • pathMatches

        protected boolean pathMatches​(String pattern,
                                      String path)
        Returns true if an incoming request path (the path argument) matches a configured filter chain path (the pattern argument), false otherwise.

        Simply delegates to getPathMatcher().matches(pattern,path). Subclass implementors should think carefully before overriding this method, as typically a custom PathMatcher should be configured for custom path matching behavior instead. Favor OO composition rather than inheritance to limit your exposure to Shiro implementation details which may change over time.

        Parameters:
        pattern - the pattern to match against
        path - the value to match with the specified pattern
        Returns:
        true if the request path matches the specified filter chain url pattern, false otherwise.