public class PathPattern extends java.lang.Object implements java.lang.Comparable<PathPattern>
PathPattern matches URL paths using the following rules:
 
? matches one character* matches zero or more characters within a path segment** matches zero or more path segments until the end of the path{spring} matches a path segment and captures it as a variable named "spring"{spring:[a-z]+} matches the regexp [a-z]+ as a path variable named "spring"{*spring} matches zero or more path segments until the end of the path
 and captures it as a variable named "spring"/pages/t?st.html — matches /pages/test.html but also
 /pages/tast.html but not /pages/toast.html/resources/*.png — matches all .png files in the
 resources directory/resources/** — matches all files
 underneath the /resources/ path, including /resources/image.png
 and /resources/css/spring.css/resources/{*path} — matches all files
 underneath the /resources/ path and captures their relative path in
 a variable named "path"; /resources/image.png will match with
 "spring" -> "/image.png", and /resources/css/spring.css will match
 with "spring" -> "/css/spring.css"/resources/{filename:\\w+}.dat will match /resources/spring.dat
 and assign the value "spring" to the filename variablePathContainer| Modifier and Type | Class and Description | 
|---|---|
| static class  | PathPattern.PathMatchInfoHolder for URI variables and path parameters (matrix variables) extracted
 based on the pattern for a given matched path. | 
| static class  | PathPattern.PathRemainingMatchInfoHolder for the result of a match on the start of a pattern. | 
| Modifier and Type | Field and Description | 
|---|---|
| static java.util.Comparator<PathPattern> | SPECIFICITY_COMPARATORComparator that sorts patterns by specificity as follows:
 
 Null instances are last. | 
| Modifier and Type | Method and Description | 
|---|---|
| PathPattern | combine(PathPattern pattern2string)Combine this pattern with another. | 
| int | compareTo(PathPattern otherPattern)Compare this pattern with a supplied pattern: return -1,0,+1 if this pattern
 is more specific, the same or less specific than the supplied pattern. | 
| boolean | equals(java.lang.Object other) | 
| PathContainer | extractPathWithinPattern(PathContainer path)Determine the pattern-mapped part for the given path. | 
| java.lang.String | getPatternString()Return the original String that was parsed to create this PathPattern. | 
| int | hashCode() | 
| PathPattern.PathMatchInfo | matchAndExtract(PathContainer pathContainer)Match this pattern to the given URI path and return extracted URI template
 variables as well as path parameters (matrix variables). | 
| boolean | matches(PathContainer pathContainer)Whether this pattern matches the given path. | 
| PathPattern.PathRemainingMatchInfo | matchStartOfPath(PathContainer pathContainer)Match the beginning of the given path and return the remaining portion
 not covered by this pattern. | 
| java.lang.String | toString() | 
public static final java.util.Comparator<PathPattern> SPECIFICITY_COMPARATOR
public java.lang.String getPatternString()
public boolean matches(PathContainer pathContainer)
pathContainer - the candidate path to attempt to match againsttrue if the path matches this pattern@Nullable public PathPattern.PathMatchInfo matchAndExtract(PathContainer pathContainer)
pathContainer - the candidate path to attempt to match againstnull for no match@Nullable public PathPattern.PathRemainingMatchInfo matchStartOfPath(PathContainer pathContainer)
pathContainer - the candidate path to attempt to match againstnull for no matchpublic PathContainer extractPathWithinPattern(PathContainer path)
For example:
/docs/cvs/commit.html' and '/docs/cvs/commit.html -> ''/docs/*' and '/docs/cvs/commit' -> 'cvs/commit'/docs/cvs/*.html' and '/docs/cvs/commit.html -> 'commit.html'/docs/**' and '/docs/cvs/commit -> 'cvs/commit'Notes:
matches(org.springframework.http.server.PathContainer) returns true for
 the same path but does not enforce this.
 path - a path that matches this patternpublic int compareTo(@Nullable PathPattern otherPattern)
compareTo in interface java.lang.Comparable<PathPattern>public PathPattern combine(PathPattern pattern2string)
public boolean equals(java.lang.Object other)
equals in class java.lang.Objectpublic int hashCode()
hashCode in class java.lang.Objectpublic java.lang.String toString()
toString in class java.lang.Object