function ValidSequenceKeysConstraint::create

Creates an instance of the plugin.

Parameters

\Symfony\Component\DependencyInjection\ContainerInterface $container: The container to pull out services used in the plugin.

array $configuration: A configuration array containing information about the plugin instance.

string $plugin_id: The plugin ID for the plugin instance.

mixed $plugin_definition: The plugin implementation definition.

Return value

static Returns an instance of this plugin.

Overrides ContainerFactoryPluginInterface::create

File

core/lib/Drupal/Core/Validation/Plugin/Validation/Constraint/ValidSequenceKeysConstraint.php, line 34

Class

ValidSequenceKeysConstraint
Checks that all the keys of a sequence match the specified constraints.

Namespace

Drupal\Core\Validation\Plugin\Validation\Constraint

Code

public static function create(ContainerInterface $container, array $configuration, $plugin_id, $plugin_definition) : static {
  $constraint_manager = $container->get('validation.constraint');
  $constraints = $configuration['constraints'];
  $constraint_instances = [];
  foreach ($constraints as $constraint_name => $constraint_options) {
    $constraint_instances[$constraint_name] = $constraint_manager->create($constraint_name, $constraint_options);
  }
  return new static([
    'constraints' => $constraint_instances,
  ], [
    SymfonyConstraint::DEFAULT_GROUP,
  ]);
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.