in src/main/java/com/epam/digital/data/platform/registry/regulation/validation/cli/validator/report/ReportGroupUniqueNameValidator.java [51:75]
public Set<ValidationError> validate(Collection<File> reportFiles, ValidationContext context) {
Set<String> roles = Sets.newHashSet();
reportFiles.forEach(
file -> roles.add(StringUtils.substringBetween(file.getPath(), REPORTS_FOLDER_NAME, File.separator)));
Set<ValidationError> errors = Sets.newHashSet();
for (String role : roles) {
Set<String> processedDashboardNames = Sets.newHashSet();
Set<String> processedQueryNames = Sets.newHashSet();
reportFiles.forEach(file -> {
if (file.getPath().contains(File.separator + role + File.separator)) {
try {
if (file.getPath().contains(QUERIES_FOLDER_NAME)) {
validateQueries(file, processedQueryNames, errors, context);
} else {
validateDashboards(file, processedDashboardNames, errors, context);
}
} catch (IOException e) {
errors.add(ValidationError.of(context.getRegulationFileType(),
file, FILE_PROCESSING_ERROR_MSG, e));
}
}
});
}
return errors;
}