public class SchemaImpl extends BaseMutableStateValidator implements SchemaInternal
Modifier and Type | Field and Description |
---|---|
protected boolean |
shouldRecordContext |
Constructor and Description |
---|
SchemaImpl(JsonObject schema,
JsonPointer scope,
MutableStateValidator parent) |
Modifier and Type | Method and Description |
---|---|
void |
applyDefaultValues(JsonArray array)
This function mutates
array applying default values, when available. |
void |
applyDefaultValues(JsonObject object)
This function mutates
object applying default values, when available. |
boolean |
calculateIsSync() |
void |
doApplyDefaultValues(Object obj) |
protected ValidatorContext |
generateValidationContext(ValidatorContext parent) |
Object |
getDefaultValue()
Return the default value defined in the schema
|
JsonObject |
getJson()
Get Json representation of the schema
|
JsonPointer |
getScope()
Get scope of this schema
|
boolean |
hasDefaultValue()
Return true if the schema has a default value defined
|
protected Future<Void> |
runAsyncValidators(ValidatorContext context,
Object in) |
protected void |
runSyncValidator(ValidatorContext context,
Object in) |
void |
triggerUpdateIsSync()
Manually trigger the sync state update
|
Future<Void> |
validateAsync(Object json)
Validate the json performing an asynchronous validation.
|
Future<Void> |
validateAsync(ValidatorContext context,
Object in)
Return a Future that succeed when the validation succeed, while fail with a
ValidationException when validation fails |
void |
validateSync(Object json)
Validate the json performing a synchronous validation.
|
void |
validateSync(ValidatorContext context,
Object in)
Validate the provided value
|
checkSync, getParent, getPriority, initializeIsSync, isSync, validateSyncAsAsync
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getPriority
public SchemaImpl(JsonObject schema, JsonPointer scope, MutableStateValidator parent)
public Future<Void> validateAsync(Object json)
Schema
ValidationException
if json doesn't match the schema.
Note: If the schema is synchronous, this method will call internally this#validateSync(Object)
validateAsync
in interface Schema
public void validateSync(Object json) throws ValidationException, NoSyncValidationException
Schema
ValidationException
if json doesn't match the schema.validateSync
in interface Schema
ValidationException
NoSyncValidationException
- If the schema cannot perform a synchronous validationpublic JsonPointer getScope()
Schema
public JsonObject getJson()
Schema
public Object getDefaultValue()
Schema
getDefaultValue
in interface Schema
public boolean hasDefaultValue()
Schema
hasDefaultValue
in interface Schema
public void applyDefaultValues(JsonArray array) throws NoSyncValidationException
Schema
array
applying default values, when available.applyDefaultValues
in interface Schema
NoSyncValidationException
- if this schema represents a $ref
not solved yetpublic void applyDefaultValues(JsonObject object) throws NoSyncValidationException
Schema
object
applying default values, when available.applyDefaultValues
in interface Schema
NoSyncValidationException
- if this schema represents a $ref
not solved yetpublic void doApplyDefaultValues(Object obj)
public void triggerUpdateIsSync()
MutableStateValidator
triggerUpdateIsSync
in interface MutableStateValidator
triggerUpdateIsSync
in class BaseMutableStateValidator
public Future<Void> validateAsync(ValidatorContext context, Object in)
AsyncValidator
ValidationException
when validation failsvalidateAsync
in interface AsyncValidator
public void validateSync(ValidatorContext context, Object in) throws ValidationException, NoSyncValidationException
SyncValidator
validateSync
in interface SyncValidator
ValidationException
- if the object is not validNoSyncValidationException
- if no sync validation can be providedpublic boolean calculateIsSync()
calculateIsSync
in class BaseMutableStateValidator
protected ValidatorContext generateValidationContext(ValidatorContext parent)
protected Future<Void> runAsyncValidators(ValidatorContext context, Object in)
protected void runSyncValidator(ValidatorContext context, Object in)
Copyright © 2020 Eclipse. All rights reserved.