Class AntPathRequestMatcher
java.lang.Object
org.springframework.security.web.util.matcher.AntPathRequestMatcher
- All Implemented Interfaces:
- RequestMatcher,- RequestVariablesExtractor
public final class AntPathRequestMatcher
extends Object
implements RequestMatcher, RequestVariablesExtractor
Matcher which compares a pre-defined ant-style pattern against the URL (
 
servletPath + pathInfo) of an HttpServletRequest. The query string of
 the URL is ignored and matching is case-insensitive or case-sensitive depending on the
 arguments passed into the constructor.
 
 Using a pattern value of /** or ** is treated as a universal match,
 which will match any request. Patterns which end with /** (and have no other
 wildcards) are optimized by using a substring match — a pattern of
 /aaa/** will match /aaa, /aaa/ and any sub-directories, such as
 /aaa/bbb/ccc.
 
 For all other cases, Spring's AntPathMatcher is used to perform the match. See
 the Spring documentation for this class for comprehensive information on the syntax
 used.
 
- Since:
- 3.1
- See Also:
- 
- AntPathMatcher
 
- 
Nested Class SummaryNested classes/interfaces inherited from interface org.springframework.security.web.util.matcher.RequestMatcherRequestMatcher.MatchResult
- 
Constructor SummaryConstructorsConstructorDescriptionAntPathRequestMatcher(String pattern) Creates a matcher with the specific pattern which will match all HTTP methods in a case sensitive manner.AntPathRequestMatcher(String pattern, String httpMethod) Creates a matcher with the supplied pattern and HTTP method in a case sensitive manner.AntPathRequestMatcher(String pattern, String httpMethod, boolean caseSensitive) Creates a matcher with the supplied pattern which will match the specified Http methodAntPathRequestMatcher(String pattern, String httpMethod, boolean caseSensitive, org.springframework.web.util.UrlPathHelper urlPathHelper) Creates a matcher with the supplied pattern which will match the specified Http method
- 
Method SummaryModifier and TypeMethodDescriptionstatic AntPathRequestMatcherantMatcher(String pattern) Creates a matcher with the specific pattern which will match all HTTP methods in a case-sensitive manner.static AntPathRequestMatcherantMatcher(org.springframework.http.HttpMethod method) Creates a matcher that will match all request with the supplied HTTP method in a case-sensitive manner.static AntPathRequestMatcherantMatcher(org.springframework.http.HttpMethod method, String pattern) Creates a matcher with the supplied pattern and HTTP method in a case-sensitive manner.booleanextractUriTemplateVariables(jakarta.servlet.http.HttpServletRequest request) Deprecated.inthashCode()matcher(jakarta.servlet.http.HttpServletRequest request) Returns a MatchResult for this RequestMatcher The default implementation returnsCollections.emptyMap()whenRequestMatcher.MatchResult.getVariables()is invoked.booleanmatches(jakarta.servlet.http.HttpServletRequest request) Returns true if the configured pattern (and HTTP-Method) match those of the supplied request.toString()
- 
Constructor Details- 
AntPathRequestMatcherCreates a matcher with the specific pattern which will match all HTTP methods in a case sensitive manner.- Parameters:
- pattern- the ant pattern to use for matching
 
- 
AntPathRequestMatcherCreates a matcher with the supplied pattern and HTTP method in a case sensitive manner.- Parameters:
- pattern- the ant pattern to use for matching
- httpMethod- the HTTP method. The- matchesmethod will return false if the incoming request doesn't have the same method.
 
- 
AntPathRequestMatcherCreates a matcher with the supplied pattern which will match the specified Http method- Parameters:
- pattern- the ant pattern to use for matching
- httpMethod- the HTTP method. The- matchesmethod will return false if the incoming request doesn't doesn't have the same method.
- caseSensitive- true if the matcher should consider case, else false
 
- 
AntPathRequestMatcherpublic AntPathRequestMatcher(String pattern, String httpMethod, boolean caseSensitive, org.springframework.web.util.UrlPathHelper urlPathHelper) Creates a matcher with the supplied pattern which will match the specified Http method- Parameters:
- pattern- the ant pattern to use for matching
- httpMethod- the HTTP method. The- matchesmethod will return false if the incoming request doesn't have the same method.
- caseSensitive- true if the matcher should consider case, else false
- urlPathHelper- if non-null, will be used for extracting the path from the HttpServletRequest
 
 
- 
- 
Method Details- 
antMatcherCreates a matcher with the specific pattern which will match all HTTP methods in a case-sensitive manner.- Parameters:
- pattern- the ant pattern to use for matching
- Since:
- 5.8
 
- 
antMatcherCreates a matcher that will match all request with the supplied HTTP method in a case-sensitive manner.- Parameters:
- method- the HTTP method. The- matchesmethod will return false if the incoming request doesn't have the same method.
- Since:
- 5.8
 
- 
antMatcherpublic static AntPathRequestMatcher antMatcher(org.springframework.http.HttpMethod method, String pattern) Creates a matcher with the supplied pattern and HTTP method in a case-sensitive manner.- Parameters:
- method- the HTTP method. The- matchesmethod will return false if the incoming request doesn't have the same method.
- pattern- the ant pattern to use for matching
- Since:
- 5.8
 
- 
matchespublic boolean matches(jakarta.servlet.http.HttpServletRequest request) Returns true if the configured pattern (and HTTP-Method) match those of the supplied request.- Specified by:
- matchesin interface- RequestMatcher
- Parameters:
- request- the request to match against. The ant pattern will be matched against the- servletPath+- pathInfoof the request.
- Returns:
- true if the request matches, false otherwise
 
- 
extractUriTemplateVariables@Deprecated public Map<String,String> extractUriTemplateVariables(jakarta.servlet.http.HttpServletRequest request) Deprecated.Description copied from interface:RequestVariablesExtractorExtract URL template variables from the request.- Specified by:
- extractUriTemplateVariablesin interface- RequestVariablesExtractor
- Parameters:
- request- the HttpServletRequest to obtain a URL to extract the variables from
- Returns:
- the URL variables or empty if no variables are found
 
- 
matcherDescription copied from interface:RequestMatcherReturns a MatchResult for this RequestMatcher The default implementation returnsCollections.emptyMap()whenRequestMatcher.MatchResult.getVariables()is invoked.- Specified by:
- matcherin interface- RequestMatcher
- Returns:
- the MatchResult from comparing this RequestMatcher against the HttpServletRequest
 
- 
getPattern
- 
equals
- 
hashCodepublic int hashCode()
- 
toString
 
-