public RecursiveContextualValidator::validatePropertyValue($object, $property_name, $value, $groups = NULL)
Validates a value against the constraints specified for an object's property.
Parameters
object|string $objectOrClass The object or its class name:
string $propertyName The name of the property:
mixed $value The value to validate against the: property's constraints
array|null $groups The validation groups to validate. If: none is given, "Default" is assumed
Return value
ContextualValidatorInterface This validator
Overrides ContextualValidatorInterface::validatePropertyValue
File
- core/lib/Drupal/Core/TypedData/Validation/RecursiveContextualValidator.php, line 218
Class
- RecursiveContextualValidator
- Defines a recursive contextual validator for Typed Data.
Namespace
Drupal\Core\TypedData\Validation
Code
public function validatePropertyValue($object, $property_name, $value, $groups = NULL) { if (!is_object($object)) { throw new \InvalidArgumentException('Passing class name is not supported.'); } elseif (!$object instanceof TypedDataInterface) { throw new \InvalidArgumentException('The passed in object has to be typed data.'); } elseif (!$object instanceof ListInterface && !$object instanceof ComplexDataInterface) { throw new \InvalidArgumentException('Passed data does not contain properties.'); } $data = $object->get($property_name); $metadata = $this->metadataFactory->getMetadataFor($data); $constraints = $metadata->findConstraints(Constraint::DEFAULT_GROUP); return $this->validate($value, $constraints, $groups, TRUE); }
Please login to continue.