Package com.networknt.schema
Interface JsonValidator
-
- All Superinterfaces:
JsonSchemaWalker
- All Known Implementing Classes:
AbstractJsonValidator,AdditionalPropertiesValidator,AllOfValidator,AnyOfValidator,BaseJsonValidator,ConstValidator,ContainsValidator,DateTimeValidator,DependenciesValidator,DependentRequired,DependentSchemas,EnumValidator,ExclusiveMaximumValidator,ExclusiveMinimumValidator,FalseValidator,FormatValidator,IfValidator,ItemsValidator,ItemsValidator202012,JsonSchema,MaximumValidator,MaxItemsValidator,MaxLengthValidator,MaxPropertiesValidator,MinimumValidator,MinItemsValidator,MinLengthValidator,MinMaxContainsValidator,MinPropertiesValidator,MultipleOfValidator,NotAllowedValidator,NotValidator,OneOfValidator,PatternPropertiesValidator,PatternValidator,PrefixItemsValidator,PropertiesValidator,PropertyNamesValidator,ReadOnlyValidator,RecursiveRefValidator,RefValidator,RequiredValidator,TrueValidator,TypeValidator,UnevaluatedItemsValidator,UnevaluatedPropertiesValidator,UnionTypeValidator,UniqueItemsValidator,WriteOnlyValidator
public interface JsonValidator extends JsonSchemaWalker
Standard json validator interface, implemented by all validators and JsonSchema.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description default voidpreloadJsonSchema()In case theJsonValidatorhas a relatedJsonSchemaor several ones, calling preloadJsonSchema will actually load the schema document(s) eagerly.default Set<ValidationMessage>validate(ExecutionContext executionContext, com.fasterxml.jackson.databind.JsonNode rootNode)Validate the given root JsonNode, starting at the root of the data path.Set<ValidationMessage>validate(ExecutionContext executionContext, com.fasterxml.jackson.databind.JsonNode node, com.fasterxml.jackson.databind.JsonNode rootNode, String at)Validate the given JsonNode, the given node is the child node of the root node at given data path.default Set<ValidationMessage>walk(ExecutionContext executionContext, com.fasterxml.jackson.databind.JsonNode node, com.fasterxml.jackson.databind.JsonNode rootNode, String at, boolean shouldValidateSchema)This is default implementation of walk method.
-
-
-
Method Detail
-
validate
default Set<ValidationMessage> validate(ExecutionContext executionContext, com.fasterxml.jackson.databind.JsonNode rootNode)
Validate the given root JsonNode, starting at the root of the data path.- Parameters:
executionContext- ExecutionContextrootNode- JsonNode- Returns:
- A list of ValidationMessage if there is any validation error, or an empty list if there is no error.
-
validate
Set<ValidationMessage> validate(ExecutionContext executionContext, com.fasterxml.jackson.databind.JsonNode node, com.fasterxml.jackson.databind.JsonNode rootNode, String at)
Validate the given JsonNode, the given node is the child node of the root node at given data path.- Parameters:
executionContext- ExecutionContextnode- JsonNoderootNode- JsonNodeat- String- Returns:
- A list of ValidationMessage if there is any validation error, or an empty list if there is no error.
-
preloadJsonSchema
default void preloadJsonSchema() throws JsonSchemaExceptionIn case theJsonValidatorhas a relatedJsonSchemaor several ones, calling preloadJsonSchema will actually load the schema document(s) eagerly.- Throws:
JsonSchemaException- (aRuntimeException) in case theJsonSchemaor nested schemas are invalid (like$refnot resolving)- Since:
- 1.0.54
-
walk
default Set<ValidationMessage> walk(ExecutionContext executionContext, com.fasterxml.jackson.databind.JsonNode node, com.fasterxml.jackson.databind.JsonNode rootNode, String at, boolean shouldValidateSchema)
This is default implementation of walk method. Its job is to call the validate method if shouldValidateSchema is enabled.- Specified by:
walkin interfaceJsonSchemaWalker- Parameters:
executionContext- ExecutionContextnode- JsonNoderootNode- JsonNodeat- StringshouldValidateSchema- boolean- Returns:
- a set of validation messages if shouldValidateSchema is true.
-
-