function PluginManagerPass::process
Overrides CompilerPassInterface::process
File
-
core/
lib/ Drupal/ Core/ Plugin/ PluginManagerPass.php, line 16
Class
- PluginManagerPass
- Registers plugin managers to the plugin.cache_clearer service.
Namespace
Drupal\Core\PluginCode
public function process(ContainerBuilder $container) : void {
foreach ($container->getDefinitions() as $service_id => $definition) {
if (str_starts_with($service_id, 'plugin.manager.') && !$definition->hasTag('plugin_manager_cache_clear')) {
if (is_subclass_of($definition->getClass(), '\\Drupal\\Component\\Plugin\\Discovery\\CachedDiscoveryInterface')) {
$definition->addTag('plugin_manager_cache_clear');
}
}
}
}