RecursiveContextualValidator::validate

public RecursiveContextualValidator::validate($data, $constraints = NULL, $groups = NULL, $is_root_call = TRUE)

Validates a value against a constraint or a list of constraints.

If no constraint is passed, the constraint \Symfony\Component\Validator\Constraints\Valid is assumed.

Parameters

mixed $value: The value to validate

\Symfony\Component\Validator\Constraint|\Symfony\Component\Validator\Constraint[] $constraints: The constraint(s) to validate against.

array|null $groups: The validation groups to validate, defaults to "Default".

bool $is_root_call: (optional) Whether its the most upper call in the typed data tree.

Return value

$this

Overrides ContextualValidatorInterface::validate

See also

\Symfony\Component\Validator\Constraints\Valid

File

core/lib/Drupal/Core/TypedData/Validation/RecursiveContextualValidator.php, line 84

Class

RecursiveContextualValidator
Defines a recursive contextual validator for Typed Data.

Namespace

Drupal\Core\TypedData\Validation

Code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
public function validate($data, $constraints = NULL, $groups = NULL, $is_root_call = TRUE) {
  if (isset($groups)) {
    throw new \LogicException('Passing custom groups is not supported.');
  }
 
  if (!$data instanceof TypedDataInterface) {
    throw new \InvalidArgumentException('The passed value must be a typed data object.');
  }
 
  // You can pass a single constraint or an array of constraints.
  // Make sure to deal with an array in the rest of the code.
  if (isset($constraints) && !is_array($constraints)) {
    $constraints = array($constraints);
  }
 
  $this->validateNode($data, $constraints, $is_root_call);
  return $this;
}
doc_Drupal
2025-01-10 15:47:30
Comments
Leave a Comment

Please login to continue.