org.springframework.util

Class AntPathMatcher.AntPatternComparator

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


    protected static class AntPathMatcher.AntPatternComparator
    extends java.lang.Object
    implements java.util.Comparator<java.lang.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 Summary

      Constructors 
      Constructor and Description
      AntPatternComparator(java.lang.String path) 
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method and Description
      int compare(java.lang.String pattern1, java.lang.String pattern2)
      Compare two patterns to determine which should match first, i.e.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
      • Methods inherited from interface java.util.Comparator

        comparing, comparing, comparingDouble, comparingInt, comparingLong, equals, naturalOrder, nullsFirst, nullsLast, reversed, reverseOrder, thenComparing, thenComparing, thenComparing, thenComparingDouble, thenComparingInt, thenComparingLong
    • Constructor Detail

      • AntPatternComparator

        public AntPatternComparator(java.lang.String path)
    • Method Detail

      • compare

        public int compare(java.lang.String pattern1,
                           java.lang.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 java.util.Comparator<java.lang.String>
        Returns:
        a negative integer, zero, or a positive integer as pattern1 is more specific, equally specific, or less specific than pattern2.