public boolean isValid()

in java/src/main/java/com/google/cloud/dataproc/templates/config/GeneralTemplateConfig.java [107:139]


    public boolean isValid(GeneralTemplateConfig value, ConstraintValidatorContext context) {
      Map<String, InputConfig> input =
          Optional.ofNullable(value.getInput()).orElse(new HashMap<>());
      Map<String, QueryConfig> query =
          Optional.ofNullable(value.getQuery()).orElse(new HashMap<>());
      Map<String, OutputConfig> output =
          Optional.ofNullable(value.getOutput()).orElse(new HashMap<>());
      for (String name : query.keySet()) {
        if (input.containsKey(name)) {
          context
              .buildConstraintViolationWithTemplate("name conflicts with an input")
              .addPropertyNode("query")
              .addBeanNode()
              .inIterable()
              .atKey(name)
              .addConstraintViolation();
          return false;
        }
      }
      for (String name : output.keySet()) {
        if (!input.containsKey(name) && !query.containsKey(name)) {
          context
              .buildConstraintViolationWithTemplate("name not found as input or query")
              .addPropertyNode("output")
              .addBeanNode()
              .inIterable()
              .atKey(name)
              .addConstraintViolation();
          return false;
        }
      }
      return true;
    }