public Set validate()

in src/main/java/com/epam/digital/data/platform/registry/regulation/validation/cli/validator/typed/AbstractProcessUniquenessValidator.java [35:56]


  public Set<ValidationError> validate(T regulation, ValidationContext context) {
    var regulationFileType = context.getRegulationFileType();
    var regulationFile = regulation.getRegulationFile();
    var processDefinitions = getProcessDefinitions(regulation);
    var duplicateItems = findDuplicates(processDefinitions);

    if (duplicateItems.isEmpty()) {
      return Collections.emptySet();
    }

    var joinedDuplicatedIds = duplicateItems.stream()
        .map(item -> String.format("'%s'", item.getId()))
        .collect(Collectors.joining(","));

    var validationError = ValidationError.builder()
        .regulationFileType(regulationFileType)
        .regulationFile(regulationFile)
        .errorMessage(String.format(DUPLICATES_ERROR_MSG_FORMAT, joinedDuplicatedIds))
        .build();

    return Collections.singleton(validationError);
  }