Package com.networknt.schema
Class AnyOfValidator
- java.lang.Object
-
- com.networknt.schema.ValidationMessageHandler
-
- com.networknt.schema.BaseJsonValidator
-
- com.networknt.schema.AnyOfValidator
-
- All Implemented Interfaces:
JsonValidator,JsonSchemaWalker
public class AnyOfValidator extends BaseJsonValidator
JsonValidatorfor anyOf.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class com.networknt.schema.BaseJsonValidator
BaseJsonValidator.JsonNodePathJsonPath, BaseJsonValidator.JsonNodePathJsonPointer, BaseJsonValidator.JsonNodePathLegacy
-
-
Field Summary
-
Fields inherited from class com.networknt.schema.BaseJsonValidator
schemaNode, suppressSubSchemaRetrieval, validationContext
-
Fields inherited from class com.networknt.schema.ValidationMessageHandler
errorMessage, errorMessageKeyword, errorMessageType, evaluationParentSchema, evaluationPath, keyword, messageSource, parentSchema, schemaLocation
-
-
Constructor Summary
Constructors Constructor Description AnyOfValidator(SchemaLocation schemaLocation, JsonNodePath evaluationPath, com.fasterxml.jackson.databind.JsonNode schemaNode, JsonSchema parentSchema, ValidationContext validationContext)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected booleancanShortCircuit()If annotations are require for evaluation cannot short circuit.protected booleancanShortCircuit(ExecutionContext executionContext)If annotation collection is enabled cannot short circuit.voidpreloadJsonSchema()In case theJsonValidatorhas a relatedJsonSchemaor several ones, calling preloadJsonSchema will actually load the schema document(s) eagerly.Set<ValidationMessage>validate(ExecutionContext executionContext, com.fasterxml.jackson.databind.JsonNode node, com.fasterxml.jackson.databind.JsonNode rootNode, JsonNodePath instanceLocation)Validate the given JsonNode, the given node is the child node of the root node at given data path.protected Set<ValidationMessage>validate(ExecutionContext executionContext, com.fasterxml.jackson.databind.JsonNode node, com.fasterxml.jackson.databind.JsonNode rootNode, JsonNodePath instanceLocation, boolean walk)Set<ValidationMessage>walk(ExecutionContext executionContext, com.fasterxml.jackson.databind.JsonNode node, com.fasterxml.jackson.databind.JsonNode rootNode, JsonNodePath instanceLocation, boolean shouldValidateSchema)This is default implementation of walk method.-
Methods inherited from class com.networknt.schema.BaseJsonValidator
atRoot, checkDiscriminatorMatch, collectAnnotations, collectAnnotations, debug, equals, fetchSubSchemaNode, getEvaluationParentSchema, getEvaluationPath, getKeyword, getNodeFieldType, getParentSchema, getSchemaLocation, getSchemaNode, hasAdjacentKeywordInEvaluationPath, message, preloadJsonSchemas, putAnnotation, registerAndMergeDiscriminator, toString, validate
-
Methods inherited from class com.networknt.schema.ValidationMessageHandler
getErrorMessage, getErrorMessageType, getMessageNode
-
-
-
-
Constructor Detail
-
AnyOfValidator
public AnyOfValidator(SchemaLocation schemaLocation, JsonNodePath evaluationPath, com.fasterxml.jackson.databind.JsonNode schemaNode, JsonSchema parentSchema, ValidationContext validationContext)
-
-
Method Detail
-
validate
public Set<ValidationMessage> validate(ExecutionContext executionContext, com.fasterxml.jackson.databind.JsonNode node, com.fasterxml.jackson.databind.JsonNode rootNode, JsonNodePath instanceLocation)
Description copied from interface:JsonValidatorValidate the given JsonNode, the given node is the child node of the root node at given data path.- Parameters:
executionContext- ExecutionContextnode- JsonNoderootNode- JsonNodeinstanceLocation- JsonNodePath- Returns:
- A list of ValidationMessage if there is any validation error, or an empty list if there is no error.
-
validate
protected Set<ValidationMessage> validate(ExecutionContext executionContext, com.fasterxml.jackson.databind.JsonNode node, com.fasterxml.jackson.databind.JsonNode rootNode, JsonNodePath instanceLocation, boolean walk)
-
walk
public Set<ValidationMessage> walk(ExecutionContext executionContext, com.fasterxml.jackson.databind.JsonNode node, com.fasterxml.jackson.databind.JsonNode rootNode, JsonNodePath instanceLocation, boolean shouldValidateSchema)
Description copied from interface:JsonValidatorThis is default implementation of walk method. Its job is to call the validate method if shouldValidateSchema is enabled.- Parameters:
executionContext- ExecutionContextnode- JsonNoderootNode- JsonNodeinstanceLocation- JsonNodePathshouldValidateSchema- boolean- Returns:
- a set of validation messages if shouldValidateSchema is true.
-
canShortCircuit
protected boolean canShortCircuit(ExecutionContext executionContext)
If annotation collection is enabled cannot short circuit.- Parameters:
executionContext- the execution context- Returns:
- true if can short circuit
- See Also:
- anyOf
-
canShortCircuit
protected boolean canShortCircuit()
If annotations are require for evaluation cannot short circuit.- Returns:
- true if can short circuit
-
preloadJsonSchema
public void preloadJsonSchema()
Description copied from interface:JsonValidatorIn case theJsonValidatorhas a relatedJsonSchemaor several ones, calling preloadJsonSchema will actually load the schema document(s) eagerly.
-
-