class MavenMatcherSupport extends ComponentSupport implements Matcher {

  public static Predicate<String> withHashes(final Predicate<String> predicate) {
    return (String input) ->
    {
      String mainPath = input;
      for (HashType hashType : HashType.values()) {
        if (mainPath.endsWith("." + hashType.getExt())) {
          mainPath = mainPath.substring(0, mainPath.length() - (hashType.getExt().length() + 1));
          break;
        }
      }
      return predicate.apply(mainPath);
    };
  }

  public  MavenMatcherSupport(final MavenPathParser mavenPathParser, final Predicate<String> predicate);

}