Class AntPathMatcher.AntPatternComparator

java.lang.Object
org.springframework.util.AntPathMatcher.AntPatternComparator
All Implemented Interfaces:
Comparator<String>
Enclosing class:
AntPathMatcher

protected static class AntPathMatcher.AntPatternComparator extends Object implements Comparator<String>
The default Comparator implementation returned by AntPathMatcher.getPatternComparator(String).

In order, the most "generic" pattern is determined by the following:

  • if it's null or a capture all pattern (i.e. it is equal to "/**")
  • if the other pattern is an actual match
  • if it's a catch-all pattern (i.e. it ends with "**"
  • if it's got more "*" than the other pattern
  • if it's got more "{foo}" than the other pattern
  • if it's shorter than the other pattern
  • Constructor Details

    • AntPatternComparator

      public AntPatternComparator(String path)
    • AntPatternComparator

      public AntPatternComparator(String path, String pathSeparator)
  • Method Details

    • compare

      public int compare(String pattern1, String pattern2)
      Compare two patterns to determine which should match first, i.e. which is the most specific regarding the current path.
      Specified by:
      compare in interface Comparator<String>
      Returns:
      a negative integer, zero, or a positive integer as pattern1 is more specific, equally specific, or less specific than pattern2.