public static function ExampleMeatballSandwich::create in Examples for Developers 3.x
Same name and namespace in other branches
- 8 plugin_type_example/src/Plugin/Sandwich/ExampleMeatballSandwich.php \Drupal\plugin_type_example\Plugin\Sandwich\ExampleMeatballSandwich::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
- modules/
plugin_type_example/ src/ Plugin/ Sandwich/ ExampleMeatballSandwich.php, line 58
Class
- ExampleMeatballSandwich
- Provides a meatball sandwich.
Namespace
Drupal\plugin_type_example\Plugin\SandwichCode
public static function create(ContainerInterface $container, array $configuration, $plugin_id, $plugin_definition) {
// This class needs to translate strings, so we need to inject the string
// translation service from the container. This means our plugin class has
// to implement ContainerFactoryPluginInterface. This requires that we make
// this create() method, and use it to inject services from the container.
// @see https://www.drupal.org/node/2012118
$sandwich = new static($configuration, $plugin_id, $plugin_definition, $container
->get('string_translation'));
return $sandwich;
}