Class DiscriminatorValidator
java.lang.Object
com.networknt.schema.ValidationMessageHandler
com.networknt.schema.BaseJsonValidator
com.networknt.schema.DiscriminatorValidator
- All Implemented Interfaces:
JsonValidator, JsonSchemaWalker
JsonValidator that resolves discriminator.-
Nested Class Summary
Nested classes/interfaces inherited from class BaseJsonValidator
BaseJsonValidator.JsonNodePathJsonPath, BaseJsonValidator.JsonNodePathJsonPointer, BaseJsonValidator.JsonNodePathLegacy -
Field Summary
FieldsFields inherited from class BaseJsonValidator
schemaNode, suppressSubSchemaRetrieval, validationContextFields inherited from class ValidationMessageHandler
errorMessage, errorMessageKeyword, errorMessageType, evaluationParentSchema, evaluationPath, keyword, messageSource, parentSchema, schemaLocation -
Constructor Summary
ConstructorsConstructorDescriptionDiscriminatorValidator(SchemaLocation schemaLocation, JsonNodePath evaluationPath, com.fasterxml.jackson.databind.JsonNode schemaNode, JsonSchema parentSchema, ValidationContext validationContext) -
Method Summary
Modifier and TypeMethodDescriptionGets the mapping to map the property name value to the schema name.Gets the property name of the discriminator.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, getKeyword, 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
preloadJsonSchema, walk
-
Field Details
-
propertyName
-
mapping
-
-
Constructor Details
-
DiscriminatorValidator
public DiscriminatorValidator(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.- 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.
-
getPropertyName
Gets the property name of the discriminator.- Returns:
- the property name
-
getMapping
-