The Spring Framework

## org.springframework.util
Interface PathMatcher

All Known Implementing Classes:
  AntPathMatcher

    public interface PathMatcher

Strategy interface for `String`-based path matching.

Used by `PathMatchingResourcePatternResolver`, `AbstractUrlHandlerMapping`, `PropertiesMethodNameResolver`, and `WebContentInterceptor`.

The default implementation is `AntPathMatcher`, supporting the Ant-style pattern syntax.

Since:
  1.2
Author:
  Juergen Hoeller
See Also:
  `AntPathMatcher`

Method Summary
`String` `extractPathWithinPattern(String pattern, String path)` Given a pattern and a full path, determine the pattern-mapped part.
`boolean` `isPattern(String path)` Does the given `path` represent a pattern that can be matched by an implementation of this interface?
`boolean` `match(String pattern, String path)` Match the given `path` against the given `pattern`, according to this PathMatcher's matching strategy.
`boolean` `matchStart(String pattern, String path)` Match the given `path` against the corresponding part of the given `pattern`, according to this PathMatcher's matching strategy.

Method Detail

### isPattern

    boolean isPattern(String path)

  Does the given `path` represent a pattern that can be matched by an implementation of this interface?

  If the return value is `false`, then the `match(java.lang.String, java.lang.String)` method does not have to be used because direct equality comparisons on the static path Strings will lead to the same result.

  Parameters:
    `path` - the path String to check
  Returns:
    `true` if the given `path` represents a pattern

### match

    boolean match(String pattern,
                  String path)

  Match the given `path` against the given `pattern`, according to this PathMatcher's matching strategy.

  Parameters:
    `pattern` - the pattern to match against
    `path` - the path String to test
  Returns:
    `true` if the supplied `path` matched, `false` if it didn't

### matchStart

    boolean matchStart(String pattern,
                       String path)

  Match the given `path` against the corresponding part of the given `pattern`, according to this PathMatcher's matching strategy.

  Determines whether the pattern at least matches as far as the given base path goes, assuming that a full path may then match as well.

  Parameters:
    `pattern` - the pattern to match against
    `path` - the path String to test
  Returns:
    `true` if the supplied `path` matched, `false` if it didn't

### extractPathWithinPattern

    String extractPathWithinPattern(String pattern,
                                    String path)

  Given a pattern and a full path, determine the pattern-mapped part.

  This method is supposed to find out which part of the path is matched dynamically through an actual pattern, that is, it strips off a statically defined leading path from the given full path, returning only the actually pattern-matched part of the path.

  For example: For "myroot/*.html" as pattern and "myroot/myfile.html" as full path, this method should return "myfile.html". The detailed determination rules are specified to this PathMatcher's matching strategy.

  A simple implementation may return the given full path as-is in case of an actual pattern, and the empty String in case of the pattern not containing any dynamic parts (i.e. the `pattern` parameter being a static path that wouldn't qualify as an actual `pattern`). A sophisticated implementation will differentiate between the static parts and the dynamic parts of the given path pattern.

  Parameters:
    `pattern` - the path pattern
    `path` - the full path to introspect
  Returns:
    the pattern-mapped part of the given `path` (never `null`)

The Spring Framework

Copyright © 2002-2008 The Spring Framework.