Package com.networknt.schema
Class FormatValidator
java.lang.Object
com.networknt.schema.ValidationMessageHandler
com.networknt.schema.BaseJsonValidator
com.networknt.schema.format.BaseFormatJsonValidator
com.networknt.schema.FormatValidator
- All Implemented Interfaces:
JsonValidator,JsonSchemaWalker
Validator for Format.
-
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.format.BaseFormatJsonValidator
assertionsEnabledFields 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
ConstructorsConstructorDescriptionFormatValidator(SchemaLocation schemaLocation, JsonNodePath evaluationPath, com.fasterxml.jackson.databind.JsonNode schemaNode, JsonSchema parentSchema, ValidationContext validationContext, Format format, ErrorMessageType errorMessageType, Keyword keyword) FormatValidator(SchemaLocation schemaLocation, JsonNodePath evaluationPath, com.fasterxml.jackson.databind.JsonNode schemaNode, JsonSchema parentSchema, ValidationContext validationContext, Format format, ValidatorTypeCode type) -
Method Summary
Modifier and TypeMethodDescriptionprotected booleancreateUnknownFormatAssertions(ExecutionContext executionContext) When the Format-Assertion vocabulary is specified, implementations MUST fail upon encountering unknown formats.protected ObjectGets the annotation value.protected booleanisStrict(ExecutionContext executionContext) Determines if strict handling.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> validateUnknownFormat(ExecutionContext executionContext, com.fasterxml.jackson.databind.JsonNode node, com.fasterxml.jackson.databind.JsonNode rootNode, JsonNodePath instanceLocation) When the Format-Assertion vocabulary is specified, implementations MUST fail upon encountering unknown formats.Methods inherited from class com.networknt.schema.format.BaseFormatJsonValidator
isAssertionsEnabled, isFormatAssertionVocabularyEnabled, isFormatAssertionVocabularyEnabledMethods 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
-
FormatValidator
public FormatValidator(SchemaLocation schemaLocation, JsonNodePath evaluationPath, com.fasterxml.jackson.databind.JsonNode schemaNode, JsonSchema parentSchema, ValidationContext validationContext, Format format, ErrorMessageType errorMessageType, Keyword keyword) -
FormatValidator
public FormatValidator(SchemaLocation schemaLocation, JsonNodePath evaluationPath, com.fasterxml.jackson.databind.JsonNode schemaNode, JsonSchema parentSchema, ValidationContext validationContext, Format format, ValidatorTypeCode type)
-
-
Method Details
-
getAnnotationValue
Gets the annotation value.- Returns:
- the annotation value
-
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.
-
validateUnknownFormat
protected Set<ValidationMessage> validateUnknownFormat(ExecutionContext executionContext, com.fasterxml.jackson.databind.JsonNode node, com.fasterxml.jackson.databind.JsonNode rootNode, JsonNodePath instanceLocation) When the Format-Assertion vocabulary is specified, implementations MUST fail upon encountering unknown formats.- Parameters:
executionContext- the execution contextnode- the noderootNode- the root nodeinstanceLocation- the instance location- Returns:
- the messages
-
createUnknownFormatAssertions
When the Format-Assertion vocabulary is specified, implementations MUST fail upon encountering unknown formats.Note that this is different from setting the setFormatAssertionsEnabled configuration option.
The following logic will return true if the format assertions option is turned on and strict is enabled (default false) or the format assertion vocabulary is enabled.
- Parameters:
executionContext- the execution context- Returns:
- true if format assertions should be generated
-
isStrict
Determines if strict handling.Note that this defaults to false.
- Parameters:
executionContext- the execution context- Returns:
- whether to perform strict handling
-