GenericObjectValidator
class GenericObjectValidator extends AbstractValidator implements ObjectValidatorInterface (View source)
A generic object validator which allows for specifying property validators.
Properties
protected bool | $acceptsEmptyValues | Specifies whether this validator accepts empty values. |
from AbstractValidator |
protected array | $supportedOptions | ||
protected array | $options | from AbstractValidator | |
protected Result[] | $resultStack | from AbstractValidator | |
protected array | $propertyValidators | ||
protected SplObjectStorage | $validatedInstancesContainer |
Methods
Constructs the validator and sets validation options
Push a new Result onto the Result stack and return it in order to fix cyclic calls to a single validator.
Pop and return the current Result from the stack and make $this->result point to the last Result again.
Get the current Result for this validation invocation. Use this inside your isValid() implementation to e.g. merge results together into the current one.
Checks if the given value is valid according to the validator, and returns the Error Messages object which occurred.
Checks if the given value is valid according to the property validators.
Creates a new validation error object and adds it to $this->errors
Allows to set a container to keep track of validated instances.
No description
No description
Load the property value to be used for validation.
Checks if the specified property of the given object is valid, and adds found errors to the $messages object.
Adds the given validator for validation of the specified property.
Returns all property validators - or only validators of the specified property
Details
__construct(array $options = [])
Constructs the validator and sets validation options
protected Result
pushResult()
Push a new Result onto the Result stack and return it in order to fix cyclic calls to a single validator.
protected Result
popResult()
Pop and return the current Result from the stack and make $this->result point to the last Result again.
protected Result|null
getResult()
Get the current Result for this validation invocation. Use this inside your isValid() implementation to e.g. merge results together into the current one.
Result
validate(mixed $value)
Checks if the given value is valid according to the validator, and returns the Error Messages object which occurred.
protected void
isValid(mixed $object)
Checks if the given value is valid according to the property validators.
protected void
addError(string $message, int $code, array $arguments = [])
Creates a new validation error object and adds it to $this->errors
array
getOptions()
Returns the options of this validator
final protected bool
isEmpty(mixed $value)
No description
void
setValidatedInstancesContainer(SplObjectStorage $validatedInstancesContainer)
Allows to set a container to keep track of validated instances.
protected bool
isUninitializedProxy($object)
No description
protected bool
isValidatedAlready(object $object)
No description
protected mixed
getPropertyValue(object $object, string $propertyName)
Load the property value to be used for validation.
In case the object is a doctrine proxy, we need to load the real instance first.
protected null|Result
checkProperty(mixed $value, array $validators)
Checks if the specified property of the given object is valid, and adds found errors to the $messages object.
void
addPropertyValidator(string $propertyName, ValidatorInterface $validator)
Adds the given validator for validation of the specified property.
array
getPropertyValidators(string $propertyName = null)
Returns all property validators - or only validators of the specified property