Package com.networknt.schema
Class OneOfValidator
- java.lang.Object
-
- com.networknt.schema.BaseJsonValidator
-
- com.networknt.schema.OneOfValidator
-
- All Implemented Interfaces:
JsonValidator
,JsonSchemaWalker
public class OneOfValidator extends BaseJsonValidator
-
-
Field Summary
-
Fields inherited from class com.networknt.schema.BaseJsonValidator
applyDefaultsStrategy, failFast, parentSchema, schemaNode, schemaPath, suppressSubSchemaRetrieval, validationContext
-
-
Constructor Summary
Constructors Constructor Description OneOfValidator(String schemaPath, com.fasterxml.jackson.databind.JsonNode schemaNode, JsonSchema parentSchema, ValidationContext validationContext)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
preloadJsonSchema()
In case theJsonValidator
has a relatedJsonSchema
or several ones, calling preloadJsonSchema will actually load the schema document(s) eagerly.Set<ValidationMessage>
validate(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.Set<ValidationMessage>
walk(com.fasterxml.jackson.databind.JsonNode node, com.fasterxml.jackson.databind.JsonNode rootNode, String at, boolean shouldValidateSchema)
This is default implementation of walk method.-
Methods inherited from class com.networknt.schema.BaseJsonValidator
atPath, atPath, atRoot, buildValidationMessage, checkDiscriminatorMatch, constructValidationMessage, debug, equals, fetchSubSchemaNode, getErrorMessageType, getNodeFieldType, getParentSchema, getPathType, getSchemaNode, getSchemaPath, getValidatorType, greaterThan, isPartOfOneOfMultipleType, lessThan, parseErrorCode, preloadJsonSchemas, registerAndMergeDiscriminator, updateValidatorType, validate
-
-
-
-
Constructor Detail
-
OneOfValidator
public OneOfValidator(String schemaPath, com.fasterxml.jackson.databind.JsonNode schemaNode, JsonSchema parentSchema, ValidationContext validationContext)
-
-
Method Detail
-
validate
public Set<ValidationMessage> validate(com.fasterxml.jackson.databind.JsonNode node, com.fasterxml.jackson.databind.JsonNode rootNode, String at)
Description copied from interface:JsonValidator
Validate the given JsonNode, the given node is the child node of the root node at given data path.- Parameters:
node
- JsonNoderootNode
- JsonNodeat
- String- Returns:
- A list of ValidationMessage if there is any validation error, or an empty list if there is no error.
-
walk
public Set<ValidationMessage> walk(com.fasterxml.jackson.databind.JsonNode node, com.fasterxml.jackson.databind.JsonNode rootNode, String at, boolean shouldValidateSchema)
Description copied from class:BaseJsonValidator
This is default implementation of walk method. Its job is to call the validate method if shouldValidateSchema is enabled.- Specified by:
walk
in interfaceJsonSchemaWalker
- Specified by:
walk
in interfaceJsonValidator
- Overrides:
walk
in classBaseJsonValidator
- Parameters:
node
- JsonNoderootNode
- JsonNodeat
- StringshouldValidateSchema
- boolean- Returns:
- a set of validation messages if shouldValidateSchema is true.
-
preloadJsonSchema
public void preloadJsonSchema()
Description copied from interface:JsonValidator
In case theJsonValidator
has a relatedJsonSchema
or several ones, calling preloadJsonSchema will actually load the schema document(s) eagerly.
-
-