Class UnionTypeValidator
java.lang.Object
com.networknt.schema.ValidationMessageHandler
com.networknt.schema.BaseJsonValidator
com.networknt.schema.UnionTypeValidator
- All Implemented Interfaces:
JsonValidator, JsonSchemaWalker
JsonValidator for type union.-
Nested Class Summary
Nested classes/interfaces inherited from class BaseJsonValidator
BaseJsonValidator.JsonNodePathJsonPath, BaseJsonValidator.JsonNodePathJsonPointer, BaseJsonValidator.JsonNodePathLegacy -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final Stringprivate static final org.slf4j.Loggerprivate final List<JsonValidator> Fields inherited from class BaseJsonValidator
schemaNode, suppressSubSchemaRetrieval, validationContextFields inherited from class ValidationMessageHandler
errorMessage, errorMessageKeyword, errorMessageType, evaluationParentSchema, evaluationPath, keyword, messageSource, parentSchema, schemaLocation -
Constructor Summary
ConstructorsConstructorDescriptionUnionTypeValidator(SchemaLocation schemaLocation, JsonNodePath evaluationPath, com.fasterxml.jackson.databind.JsonNode schemaNode, JsonSchema parentSchema, ValidationContext validationContext) -
Method Summary
Modifier and TypeMethodDescriptionThe keyword of the validator.voidIn case theJsonValidatorhas a relatedJsonSchemaor several ones, calling preloadJsonSchema will actually load the schema document(s) eagerly.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.Methods inherited from class BaseJsonValidator
atRoot, checkDiscriminatorMatch, collectAnnotations, collectAnnotations, debug, equals, fetchSubSchemaNode, getEvaluationParentSchema, getEvaluationPath, getNodeFieldType, getParentSchema, getSchemaLocation, getSchemaNode, hasAdjacentKeywordInEvaluationPath, message, preloadJsonSchemas, putAnnotation, registerAndMergeDiscriminator, toString, validateMethods inherited from class ValidationMessageHandler
getErrorMessage, getErrorMessageType, getMessageNodeMethods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface JsonValidator
getEvaluationPath, getSchemaLocation, walk
-
Field Details
-
logger
private static final org.slf4j.Logger logger -
schemas
-
error
-
-
Constructor Details
-
UnionTypeValidator
public UnionTypeValidator(SchemaLocation schemaLocation, JsonNodePath evaluationPath, com.fasterxml.jackson.databind.JsonNode schemaNode, JsonSchema parentSchema, ValidationContext validationContext)
-
-
Method Details
-
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.- Specified by:
validatein interfaceJsonValidator- 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.
-
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.- Specified by:
preloadJsonSchemain interfaceJsonValidator
-
getKeyword
Description copied from interface:JsonValidatorThe keyword of the validator.- Specified by:
getKeywordin interfaceJsonValidator- Overrides:
getKeywordin classBaseJsonValidator- Returns:
- the keyword
-