buildSrc/src/main/java/com/uber/okbuck/wrapper/BuckWrapperTask.java [86:132]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  private static String toWatchmanMatchers(Set<String> wildcardPatterns) {
    List<String> matches = new ArrayList<>();
    List<String> suffixes = new ArrayList<>();
    List<String> names = new ArrayList<>();

    for (String wildcardPattern : wildcardPatterns) {
      String simplifiedPattern =
          wildcardPattern.startsWith("**/")
              ? wildcardPattern.replaceAll("\\*\\*/", "")
              : wildcardPattern;
      String basename = FilenameUtils.getBaseName(simplifiedPattern);
      String extension = FilenameUtils.getExtension(simplifiedPattern);
      if (!simplifiedPattern.contains("/")) {
        // simple file name with no path prefixes
        if (basename.equals("*")) { // suffix
          suffixes.add(extension);
        } else { // name
          names.add(simplifiedPattern);
        }
      } else {
        matches.add(wildcardPattern);
      }
    }

    String matchExprs =
        matches
            .stream()
            .map(match -> "            [\"match\", \"" + match + "\", \"wholename\"]")
            .collect(Collectors.joining(",\n"));

    String suffixExprs =
        suffixes
            .stream()
            .map(suffix -> "            [\"suffix\", \"" + suffix + "\"]")
            .collect(Collectors.joining(",\n"));

    @Var
    String nameExpr =
        names.stream().map(name -> "\"" + name + "\"").collect(Collectors.joining(", "));
    if (!nameExpr.isEmpty()) {
      nameExpr = "            [\"name\", [" + nameExpr + "]]";
    }

    return Stream.of(suffixExprs, nameExpr, matchExprs)
        .filter(StringUtils::isNotEmpty)
        .collect(Collectors.joining(",\n"));
  }
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



plugin/src/main/java/com/uber/okbuck/wrapper/BuckWrapperTask.java [86:132]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  private static String toWatchmanMatchers(Set<String> wildcardPatterns) {
    List<String> matches = new ArrayList<>();
    List<String> suffixes = new ArrayList<>();
    List<String> names = new ArrayList<>();

    for (String wildcardPattern : wildcardPatterns) {
      String simplifiedPattern =
          wildcardPattern.startsWith("**/")
              ? wildcardPattern.replaceAll("\\*\\*/", "")
              : wildcardPattern;
      String basename = FilenameUtils.getBaseName(simplifiedPattern);
      String extension = FilenameUtils.getExtension(simplifiedPattern);
      if (!simplifiedPattern.contains("/")) {
        // simple file name with no path prefixes
        if (basename.equals("*")) { // suffix
          suffixes.add(extension);
        } else { // name
          names.add(simplifiedPattern);
        }
      } else {
        matches.add(wildcardPattern);
      }
    }

    String matchExprs =
        matches
            .stream()
            .map(match -> "            [\"match\", \"" + match + "\", \"wholename\"]")
            .collect(Collectors.joining(",\n"));

    String suffixExprs =
        suffixes
            .stream()
            .map(suffix -> "            [\"suffix\", \"" + suffix + "\"]")
            .collect(Collectors.joining(",\n"));

    @Var
    String nameExpr =
        names.stream().map(name -> "\"" + name + "\"").collect(Collectors.joining(", "));
    if (!nameExpr.isEmpty()) {
      nameExpr = "            [\"name\", [" + nameExpr + "]]";
    }

    return Stream.of(suffixExprs, nameExpr, matchExprs)
        .filter(StringUtils::isNotEmpty)
        .collect(Collectors.joining(",\n"));
  }
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



