Package com.networknt.schema
Class AbstractJsonValidator
- java.lang.Object
-
- com.networknt.schema.AbstractJsonValidator
-
- All Implemented Interfaces:
JsonValidator,JsonSchemaWalker
public abstract class AbstractJsonValidator extends Object implements JsonValidator
BaseJsonValidator.
-
-
Constructor Summary
Constructors Constructor Description AbstractJsonValidator(SchemaLocation schemaLocation, JsonNodePath evaluationPath, Keyword keyword, com.fasterxml.jackson.databind.JsonNode schemaNode)Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected booleancollectAnnotations(ExecutionContext executionContext)Determine if annotations should be reported.protected booleancollectAnnotations(ExecutionContext executionContext, String keyword)Determine if annotations should be reported.JsonNodePathgetEvaluationPath()The evaluation path is the set of keys, starting from the schema root, through which evaluation passes to reach the schema object that produced a specific result.StringgetKeyword()The keyword of the validator.SchemaLocationgetSchemaLocation()The schema location is the canonical URI of the schema object plus a JSON Pointer fragment indicating the subschema that produced a result.com.fasterxml.jackson.databind.JsonNodegetSchemaNode()The schema node used to create the validator.protected voidputAnnotation(ExecutionContext executionContext, Consumer<JsonNodeAnnotation.Builder> customizer)Puts an annotation.StringtoString()-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface com.networknt.schema.JsonValidator
preloadJsonSchema, validate, walk
-
-
-
-
Constructor Detail
-
AbstractJsonValidator
public AbstractJsonValidator(SchemaLocation schemaLocation, JsonNodePath evaluationPath, Keyword keyword, com.fasterxml.jackson.databind.JsonNode schemaNode)
Constructor.- Parameters:
schemaLocation- the schema locationevaluationPath- the evaluation pathkeyword- the keywordschemaNode- the schema node
-
-
Method Detail
-
getSchemaLocation
public SchemaLocation getSchemaLocation()
Description copied from interface:JsonValidatorThe schema location is the canonical URI of the schema object plus a JSON Pointer fragment indicating the subschema that produced a result. In contrast with the evaluation path, the schema location MUST NOT include by-reference applicators such as $ref or $dynamicRef.- Specified by:
getSchemaLocationin interfaceJsonValidator- Returns:
- the schema location
-
getEvaluationPath
public JsonNodePath getEvaluationPath()
Description copied from interface:JsonValidatorThe evaluation path is the set of keys, starting from the schema root, through which evaluation passes to reach the schema object that produced a specific result.- Specified by:
getEvaluationPathin interfaceJsonValidator- Returns:
- the evaluation path
-
getKeyword
public String getKeyword()
Description copied from interface:JsonValidatorThe keyword of the validator.- Specified by:
getKeywordin interfaceJsonValidator- Returns:
- the keyword
-
getSchemaNode
public com.fasterxml.jackson.databind.JsonNode getSchemaNode()
The schema node used to create the validator.- Returns:
- the schema node
-
collectAnnotations
protected boolean collectAnnotations(ExecutionContext executionContext)
Determine if annotations should be reported.- Parameters:
executionContext- the execution context- Returns:
- true if annotations should be reported
-
collectAnnotations
protected boolean collectAnnotations(ExecutionContext executionContext, String keyword)
Determine if annotations should be reported.- Parameters:
executionContext- the execution contextkeyword- the keyword- Returns:
- true if annotations should be reported
-
putAnnotation
protected void putAnnotation(ExecutionContext executionContext, Consumer<JsonNodeAnnotation.Builder> customizer)
Puts an annotation.- Parameters:
executionContext- the execution contextcustomizer- to customize the annotation
-
-