public Set validate()

in src/main/java/com/epam/digital/data/platform/registry/regulation/validation/cli/validator/form/FormToSearchConditionExistenceValidator.java [51:81]


  public Set<ValidationError> validate(RegulationFiles regulation, ValidationContext context) {
    Set<ValidationError> errors = Sets.newHashSet();
    List<Change> changes = new ArrayList<>();

    var liquibaseFiles = regulation.getLiquibaseFiles();
    if (!liquibaseFiles.isEmpty()) {
      var mainLiquibase = liquibaseFiles.iterator().next();
      try {
        changes = getAllChanges(getDatabaseChangeLog(mainLiquibase));
      } catch (LiquibaseException e) {
        return Collections.singleton(
            ValidationError.of(context.getRegulationFileType(), mainLiquibase,
                "File processing failure", e)
        );
      }
    }

    var searchConditions = getSearchConditions(changes);

    for (File regulationFile : regulation.getFormFiles()) {
      try {
        validateDataUrl(regulationFile, context, searchConditions, errors);
      } catch (IOException ex) {
        return Collections.singleton(
            ValidationError.of(context.getRegulationFileType(), regulationFile,
                "File processing failure", ex)
        );
      }
    }
    return errors;
  }