You are here

public function Fz152PluginManager::__construct in FZ152 8

Creates the discovery object.

Parameters

string|bool $subdir: The plugin's subdirectory, for example Plugin/views/filter.

\Traversable $namespaces: An object that implements \Traversable which contains the root paths keyed by the corresponding namespace to look for plugin implementations.

\Drupal\Core\Extension\ModuleHandlerInterface $module_handler: The module handler.

string|null $plugin_interface: (optional) The interface each plugin should implement.

string $plugin_definition_annotation_name: (optional) The name of the annotation that contains the plugin definition. Defaults to 'Drupal\Component\Annotation\Plugin'.

string[] $additional_annotation_namespaces: (optional) Additional namespaces to scan for annotation definitions.

Overrides DefaultPluginManager::__construct

File

src/Fz152PluginManager.php, line 19

Class

Fz152PluginManager
Class Fz152PluginManager.

Namespace

Drupal\fz152

Code

public function __construct(\Traversable $namespaces, CacheBackendInterface $cache_backend, ModuleHandlerInterface $module_handler) {
  parent::__construct('Plugin/Fz152', $namespaces, $module_handler, Fz152PluginInterface::class, Fz152::class);

  // hook_fz152_info_alter() — ability to alter plugin values.
  $this
    ->alterInfo('fz152_info');
  $this
    ->setCacheBackend($cache_backend, 'fz152_plugins');
  $this->factory = new DefaultFactory($this
    ->getDiscovery());
}