Package com.networknt.schema
Class EnumValidator
java.lang.Object
com.networknt.schema.ValidationMessageHandler
com.networknt.schema.BaseJsonValidator
com.networknt.schema.EnumValidator
- All Implemented Interfaces:
JsonValidator,JsonSchemaWalker
JsonValidator for enum.-
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, validationContextFields inherited from class com.networknt.schema.ValidationMessageHandler
errorMessage, errorMessageKeyword, errorMessageType, evaluationParentSchema, evaluationPath, keyword, messageSource, parentSchema, schemaLocation -
Constructor Summary
ConstructorsConstructorDescriptionEnumValidator(SchemaLocation schemaLocation, JsonNodePath evaluationPath, com.fasterxml.jackson.databind.JsonNode schemaNode, JsonSchema parentSchema, ValidationContext validationContext) -
Method Summary
Modifier and TypeMethodDescriptionprotected booleanhasNumber(com.fasterxml.jackson.databind.node.ArrayNode node) Determines if the array node contains a number.protected com.fasterxml.jackson.databind.node.ArrayNodeprocessArrayNode(com.fasterxml.jackson.databind.node.ArrayNode node) Processes the array and ensures that numbers within have trailing zeroes stripped.protected com.fasterxml.jackson.databind.JsonNodeprocessNumberNode(com.fasterxml.jackson.databind.JsonNode n) Processes the number and ensures trailing zeros are stripped.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 com.networknt.schema.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 com.networknt.schema.ValidationMessageHandler
getErrorMessage, getErrorMessageType, getMessageNodeMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface com.networknt.schema.JsonValidator
getEvaluationPath, getKeyword, getSchemaLocation, preloadJsonSchema, walk
-
Constructor Details
-
EnumValidator
public EnumValidator(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.
-
processNumberNode
protected com.fasterxml.jackson.databind.JsonNode processNumberNode(com.fasterxml.jackson.databind.JsonNode n) Processes the number and ensures trailing zeros are stripped.- Parameters:
n- the node- Returns:
- the node
-
processArrayNode
protected com.fasterxml.jackson.databind.node.ArrayNode processArrayNode(com.fasterxml.jackson.databind.node.ArrayNode node) Processes the array and ensures that numbers within have trailing zeroes stripped.- Parameters:
node- the node- Returns:
- the node
-
hasNumber
protected boolean hasNumber(com.fasterxml.jackson.databind.node.ArrayNode node) Determines if the array node contains a number.- Parameters:
node- the node- Returns:
- the node
-