Class JsonSchemaValidatorFactory

  • All Implemented Interfaces:
    java.lang.AutoCloseable

    public class JsonSchemaValidatorFactory
    extends java.lang.Object
    implements java.lang.AutoCloseable
    • Field Detail

      • ROOT_PATH

        private static final java.lang.String[] ROOT_PATH
      • NO_VALIDATION

        private static final java.util.function.Function<jakarta.json.JsonValue,​java.util.stream.Stream<ValidationResult.ValidationError>> NO_VALIDATION
      • regexFactory

        private final java.util.concurrent.atomic.AtomicReference<java.util.function.Function<java.lang.String,​java.util.function.Predicate<java.lang.CharSequence>>> regexFactory
    • Constructor Detail

      • JsonSchemaValidatorFactory

        public JsonSchemaValidatorFactory()
    • Method Detail

      • newRegexFactory

        private java.util.function.Predicate<java.lang.CharSequence> newRegexFactory​(java.lang.String regex)
      • createDefaultValidations

        public java.util.List<ValidationExtension> createDefaultValidations()
      • setRegexFactory

        public JsonSchemaValidatorFactory setRegexFactory​(java.util.function.Function<java.lang.String,​java.util.function.Predicate<java.lang.CharSequence>> factory)
      • close

        public void close()
        Specified by:
        close in interface java.lang.AutoCloseable
      • buildValidator

        private java.util.function.Function<jakarta.json.JsonValue,​java.util.stream.Stream<ValidationResult.ValidationError>> buildValidator​(java.lang.String[] path,
                                                                                                                                                   jakarta.json.JsonObject schema,
                                                                                                                                                   java.util.function.Function<jakarta.json.JsonValue,​jakarta.json.JsonValue> valueProvider)
      • buildDirectValidations

        private java.util.stream.Stream<java.util.function.Function<jakarta.json.JsonValue,​java.util.stream.Stream<ValidationResult.ValidationError>>> buildDirectValidations​(java.lang.String[] path,
                                                                                                                                                                                    jakarta.json.JsonObject schema,
                                                                                                                                                                                    java.util.function.Function<jakarta.json.JsonValue,​jakarta.json.JsonValue> valueProvider)
      • buildPropertiesValidations

        private java.util.function.Function<jakarta.json.JsonValue,​java.util.stream.Stream<ValidationResult.ValidationError>> buildPropertiesValidations​(java.lang.String[] path,
                                                                                                                                                               jakarta.json.JsonObject schema,
                                                                                                                                                               java.util.function.Function<jakarta.json.JsonValue,​jakarta.json.JsonValue> valueProvider)
      • buildPatternPropertiesValidations

        private java.util.function.Function<jakarta.json.JsonValue,​java.util.stream.Stream<ValidationResult.ValidationError>> buildPatternPropertiesValidations​(java.lang.String[] path,
                                                                                                                                                                      jakarta.json.JsonObject schema,
                                                                                                                                                                      java.util.function.Function<jakarta.json.JsonValue,​jakarta.json.JsonValue> valueProvider)
      • buildAdditionalPropertiesValidations

        private java.util.function.Function<jakarta.json.JsonValue,​java.util.stream.Stream<ValidationResult.ValidationError>> buildAdditionalPropertiesValidations​(java.lang.String[] path,
                                                                                                                                                                         jakarta.json.JsonObject schema,
                                                                                                                                                                         java.util.function.Function<jakarta.json.JsonValue,​jakarta.json.JsonValue> valueProvider)