function BlockManager::__construct

Same name and namespace in other branches
  1. 9 core/lib/Drupal/Core/Block/BlockManager.php \Drupal\Core\Block\BlockManager::__construct()
  2. 8.9.x core/lib/Drupal/Core/Block/BlockManager.php \Drupal\Core\Block\BlockManager::__construct()
  3. 10 core/lib/Drupal/Core/Block/BlockManager.php \Drupal\Core\Block\BlockManager::__construct()

Constructs a new \Drupal\Core\Block\BlockManager object.

Parameters

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

\Drupal\Core\Cache\CacheBackendInterface $cache_backend: Cache backend instance to use.

\Drupal\Core\Extension\ModuleHandlerInterface $module_handler: The module handler to invoke the alter hook with.

\Psr\Log\LoggerInterface $logger: The logger.

Overrides DefaultPluginManager::__construct

File

core/lib/Drupal/Core/Block/BlockManager.php, line 48

Class

BlockManager
Manages discovery and instantiation of block plugins.

Namespace

Drupal\Core\Block

Code

public function __construct(\Traversable $namespaces, CacheBackendInterface $cache_backend, ModuleHandlerInterface $module_handler, LoggerInterface $logger) {
    parent::__construct('Plugin/Block', $namespaces, $module_handler, 'Drupal\\Core\\Block\\BlockPluginInterface', Block::class, 'Drupal\\Core\\Block\\Annotation\\Block');
    $this->alterInfo($this->getType());
    $this->setCacheBackend($cache_backend, 'block_plugins');
    $this->logger = $logger;
}

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