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;
}