annotate core/modules/media/src/MediaSourceManager.php @ 0:c75dbcec494b

Initial commit from drush-created site
author Chris Cannam
date Thu, 05 Jul 2018 14:24:15 +0000
parents
children
rev   line source
Chris@0 1 <?php
Chris@0 2
Chris@0 3 namespace Drupal\media;
Chris@0 4
Chris@0 5 use Drupal\Core\Cache\CacheBackendInterface;
Chris@0 6 use Drupal\Core\Extension\ModuleHandlerInterface;
Chris@0 7 use Drupal\Core\Plugin\DefaultPluginManager;
Chris@0 8 use Drupal\media\Annotation\MediaSource;
Chris@0 9
Chris@0 10 /**
Chris@0 11 * Manages media source plugins.
Chris@0 12 */
Chris@0 13 class MediaSourceManager extends DefaultPluginManager {
Chris@0 14
Chris@0 15 /**
Chris@0 16 * Constructs a new MediaSourceManager.
Chris@0 17 *
Chris@0 18 * @param \Traversable $namespaces
Chris@0 19 * An object that implements \Traversable which contains the root paths
Chris@0 20 * keyed by the corresponding namespace to look for plugin implementations.
Chris@0 21 * @param \Drupal\Core\Cache\CacheBackendInterface $cache_backend
Chris@0 22 * Cache backend instance to use.
Chris@0 23 * @param \Drupal\Core\Extension\ModuleHandlerInterface $module_handler
Chris@0 24 * The module handler.
Chris@0 25 */
Chris@0 26 public function __construct(\Traversable $namespaces, CacheBackendInterface $cache_backend, ModuleHandlerInterface $module_handler) {
Chris@0 27 parent::__construct('Plugin/media/Source', $namespaces, $module_handler, MediaSourceInterface::class, MediaSource::class);
Chris@0 28
Chris@0 29 $this->alterInfo('media_source_info');
Chris@0 30 $this->setCacheBackend($cache_backend, 'media_source_plugins');
Chris@0 31 }
Chris@0 32
Chris@0 33 }