public Set validate()

in src/main/java/com/epam/digital/data/platform/registry/regulation/validation/cli/validator/excerpt/ExcerptTemplateUniqueNameValidator.java [37:59]


  public Set<ValidationError> validate(Collection<File> directories, ValidationContext context) {
    Set<String> allExcerptNames = new HashSet<>();
    Set<ValidationError> errors = new HashSet<>();

    for (File dir : directories) {
      if (!dir.exists()) {
        continue;
      }
      
      var files = Arrays.asList(Objects.requireNonNull(dir.listFiles(file -> !file.isHidden())));
      var excerptNames = files.stream()
          .map(this::convertToExcerptName)
          .filter(StringUtils::isNotBlank)
          .collect(Collectors.toSet());

      Collection<String> duplicates = getDuplicates(allExcerptNames, excerptNames);
      if (!duplicates.isEmpty()) {
        errors.add(toValidationError(duplicates, dir, context));
      }
      allExcerptNames.addAll(excerptNames);
    }
    return errors;
  }