Mercurial > hg > isophonics-drupal-site
diff core/lib/Drupal/Core/Block/BlockManager.php @ 17:129ea1e6d783
Update, including to Drupal core 8.6.10
author | Chris Cannam |
---|---|
date | Thu, 28 Feb 2019 13:21:36 +0000 |
parents | 4c8ae668cc8c |
children |
line wrap: on
line diff
--- a/core/lib/Drupal/Core/Block/BlockManager.php Tue Jul 10 15:07:59 2018 +0100 +++ b/core/lib/Drupal/Core/Block/BlockManager.php Thu Feb 28 13:21:36 2019 +0000 @@ -6,8 +6,9 @@ use Drupal\Core\Cache\CacheBackendInterface; use Drupal\Core\Extension\ModuleHandlerInterface; use Drupal\Core\Plugin\CategorizingPluginManagerTrait; -use Drupal\Core\Plugin\Context\ContextAwarePluginManagerTrait; use Drupal\Core\Plugin\DefaultPluginManager; +use Drupal\Core\Plugin\FilteredPluginManagerTrait; +use Psr\Log\LoggerInterface; /** * Manages discovery and instantiation of block plugins. @@ -21,7 +22,14 @@ use CategorizingPluginManagerTrait { getSortedDefinitions as traitGetSortedDefinitions; } - use ContextAwarePluginManagerTrait; + use FilteredPluginManagerTrait; + + /** + * The logger. + * + * @var \Psr\Log\LoggerInterface + */ + protected $logger; /** * Constructs a new \Drupal\Core\Block\BlockManager object. @@ -33,12 +41,22 @@ * Cache backend instance to use. * @param \Drupal\Core\Extension\ModuleHandlerInterface $module_handler * The module handler to invoke the alter hook with. + * @param \Psr\Log\LoggerInterface $logger + * The logger. */ - public function __construct(\Traversable $namespaces, CacheBackendInterface $cache_backend, ModuleHandlerInterface $module_handler) { + public function __construct(\Traversable $namespaces, CacheBackendInterface $cache_backend, ModuleHandlerInterface $module_handler, LoggerInterface $logger) { parent::__construct('Plugin/Block', $namespaces, $module_handler, 'Drupal\Core\Block\BlockPluginInterface', 'Drupal\Core\Block\Annotation\Block'); - $this->alterInfo('block'); + $this->alterInfo($this->getType()); $this->setCacheBackend($cache_backend, 'block_plugins'); + $this->logger = $logger; + } + + /** + * {@inheritdoc} + */ + protected function getType() { + return 'block'; } /** @@ -67,4 +85,12 @@ return 'broken'; } + /** + * {@inheritdoc} + */ + protected function handlePluginNotFound($plugin_id, array $configuration) { + $this->logger->warning('The "%plugin_id" was not found', ['%plugin_id' => $plugin_id]); + return parent::handlePluginNotFound($plugin_id, $configuration); + } + }