function CountryCodeConstraint::create

Same name and namespace in other branches
  1. 11.x core/lib/Drupal/Core/Validation/Plugin/Validation/Constraint/CountryCodeConstraint.php \Drupal\Core\Validation\Plugin\Validation\Constraint\CountryCodeConstraint::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

1 call to CountryCodeConstraint::create()
CountryCodeConstraintTest::testConstraintLoadsChoicesFromCountryManager in core/tests/Drupal/Tests/Core/Validation/Plugin/Validation/Constraint/CountryCodeConstraintTest.php

File

core/lib/Drupal/Core/Validation/Plugin/Validation/Constraint/CountryCodeConstraint.php, line 23

Class

CountryCodeConstraint

Namespace

Drupal\Core\Validation\Plugin\Validation\Constraint

Code

public static function create(ContainerInterface $container, array $configuration, $plugin_id, $plugin_definition) : Choice {
    $countries = $container->get(CountryManagerInterface::class)
        ->getList();
    $configuration['choices'] = array_keys($countries);
    return new Choice($configuration);
}

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