From c783542c40b5041f10036f48c356101c7ad87682 Mon Sep 17 00:00:00 2001 From: catch Date: Mon, 17 Dec 2012 22:48:16 +0000 Subject: [PATCH] Issue #1862344 by damiankloip, tim.plunkett: Combine the Views plugin managers. --- .../DefaultWizardDeriver.php | 4 +-- .../Drupal/views/Plugin/Type/JoinManager.php | 34 ------------------ .../views/Plugin/Type/WizardManager.php | 35 ------------------- ...uginManager.php => ViewsPluginManager.php} | 16 ++++++--- .../views/Plugin/views/wizard/Standard.php | 2 +- .../views/lib/Drupal/views/ViewsBundle.php | 12 ++----- 6 files changed, 16 insertions(+), 87 deletions(-) rename core/modules/views/lib/Drupal/views/Plugin/{Type => Derivative}/DefaultWizardDeriver.php (93%) delete mode 100644 core/modules/views/lib/Drupal/views/Plugin/Type/JoinManager.php delete mode 100644 core/modules/views/lib/Drupal/views/Plugin/Type/WizardManager.php rename core/modules/views/lib/Drupal/views/Plugin/{Type/PluginManager.php => ViewsPluginManager.php} (71%) diff --git a/core/modules/views/lib/Drupal/views/Plugin/Type/DefaultWizardDeriver.php b/core/modules/views/lib/Drupal/views/Plugin/Derivative/DefaultWizardDeriver.php similarity index 93% rename from core/modules/views/lib/Drupal/views/Plugin/Type/DefaultWizardDeriver.php rename to core/modules/views/lib/Drupal/views/Plugin/Derivative/DefaultWizardDeriver.php index 864dab11ca2..f0ac7b45739 100644 --- a/core/modules/views/lib/Drupal/views/Plugin/Type/DefaultWizardDeriver.php +++ b/core/modules/views/lib/Drupal/views/Plugin/Derivative/DefaultWizardDeriver.php @@ -2,10 +2,10 @@ /** * @file - * Definition of Drupal\views\Plugin\Type\DefaultWizardDeriver. + * Contains \Drupal\views\Plugin\Derivative\DefaultWizardDeriver. */ -namespace Drupal\views\Plugin\Type; +namespace Drupal\views\Plugin\Derivative; use Drupal\Component\Plugin\Derivative\DerivativeInterface; diff --git a/core/modules/views/lib/Drupal/views/Plugin/Type/JoinManager.php b/core/modules/views/lib/Drupal/views/Plugin/Type/JoinManager.php deleted file mode 100644 index 2ed3f9904e4..00000000000 --- a/core/modules/views/lib/Drupal/views/Plugin/Type/JoinManager.php +++ /dev/null @@ -1,34 +0,0 @@ -discovery = new AnnotatedClassDiscovery('views', 'join'); - $this->discovery = new AlterDecorator($this->discovery, 'views_plugins_join'); - $this->discovery = new ProcessDecorator($this->discovery, array($this, 'processDefinition')); - $this->discovery = new CacheDecorator($this->discovery, 'views:join', 'views_info'); - - $this->factory = new DefaultFactory($this); - $this->defaults = array( - 'module' => 'views', - ); - } - -} diff --git a/core/modules/views/lib/Drupal/views/Plugin/Type/WizardManager.php b/core/modules/views/lib/Drupal/views/Plugin/Type/WizardManager.php deleted file mode 100644 index 4d9ae008c37..00000000000 --- a/core/modules/views/lib/Drupal/views/Plugin/Type/WizardManager.php +++ /dev/null @@ -1,35 +0,0 @@ -discovery = new AnnotatedClassDiscovery('views', 'wizard'); - $this->discovery = new AlterDecorator($this->discovery, 'views_plugins_wizard'); - $this->discovery = new ProcessDecorator($this->discovery, array($this, 'processDefinition')); - $this->discovery = new DerivativeDiscoveryDecorator($this->discovery); - $this->discovery = new CacheDecorator($this->discovery, 'views:wizard', 'views_info'); - $this->factory = new DefaultFactory($this); - $this->defaults = array( - 'module' => 'views', - ); - } - -} diff --git a/core/modules/views/lib/Drupal/views/Plugin/Type/PluginManager.php b/core/modules/views/lib/Drupal/views/Plugin/ViewsPluginManager.php similarity index 71% rename from core/modules/views/lib/Drupal/views/Plugin/Type/PluginManager.php rename to core/modules/views/lib/Drupal/views/Plugin/ViewsPluginManager.php index f492034ea9b..626a55fa3f9 100644 --- a/core/modules/views/lib/Drupal/views/Plugin/Type/PluginManager.php +++ b/core/modules/views/lib/Drupal/views/Plugin/ViewsPluginManager.php @@ -2,30 +2,36 @@ /** * @file - * Definition of Drupal\views\Plugin\Type\PluginManager. + * Contains \Drupal\views\Plugin\ViewsPluginManager. */ -namespace Drupal\views\Plugin\Type; +namespace Drupal\views\Plugin; use Drupal\Component\Plugin\PluginManagerBase; +use Drupal\Component\Plugin\Discovery\DerivativeDiscoveryDecorator; use Drupal\Component\Plugin\Factory\DefaultFactory; use Drupal\Component\Plugin\Discovery\ProcessDecorator; use Drupal\Core\Plugin\Discovery\AlterDecorator; use Drupal\Core\Plugin\Discovery\AnnotatedClassDiscovery; use Drupal\Core\Plugin\Discovery\CacheDecorator; -class PluginManager extends PluginManagerBase { +/** + * Plugin type manager for all views plugins. + */ +class ViewsPluginManager extends PluginManagerBase { /** - * Constructs a PluginManager object. + * Constructs a ViewsPluginManager object. */ public function __construct($type) { $this->discovery = new AnnotatedClassDiscovery('views', $type); - $this->discovery = new AlterDecorator($this->discovery, 'views_plugins_' . $type); + $this->discovery = new DerivativeDiscoveryDecorator($this->discovery); $this->discovery = new ProcessDecorator($this->discovery, array($this, 'processDefinition')); + $this->discovery = new AlterDecorator($this->discovery, 'views_plugins_' . $type); $this->discovery = new CacheDecorator($this->discovery, 'views:' . $type, 'views_info'); $this->factory = new DefaultFactory($this); + $this->defaults += array( 'parent' => 'parent', 'plugin_type' => $type, diff --git a/core/modules/views/lib/Drupal/views/Plugin/views/wizard/Standard.php b/core/modules/views/lib/Drupal/views/Plugin/views/wizard/Standard.php index 448382ad19b..cf8df824ab9 100644 --- a/core/modules/views/lib/Drupal/views/Plugin/views/wizard/Standard.php +++ b/core/modules/views/lib/Drupal/views/Plugin/views/wizard/Standard.php @@ -12,7 +12,7 @@ use Drupal\Core\Annotation\Plugin; /** * @Plugin( * id = "standard", - * derivative = "Drupal\views\Plugin\Type\DefaultWizardDeriver" + * derivative = "Drupal\views\Plugin\Derivative\DefaultWizardDeriver" * ) */ class Standard extends WizardPluginBase { diff --git a/core/modules/views/lib/Drupal/views/ViewsBundle.php b/core/modules/views/lib/Drupal/views/ViewsBundle.php index 7a85ff05964..5b32a706e23 100644 --- a/core/modules/views/lib/Drupal/views/ViewsBundle.php +++ b/core/modules/views/lib/Drupal/views/ViewsBundle.php @@ -21,16 +21,8 @@ class ViewsBundle extends Bundle { */ public function build(ContainerBuilder $container) { foreach (ViewExecutable::getPluginTypes() as $type) { - if ($type == 'join') { - $container->register('plugin.manager.views.join', 'Drupal\views\Plugin\Type\JoinManager'); - } - elseif ($type == 'wizard') { - $container->register('plugin.manager.views.wizard', 'Drupal\views\Plugin\Type\WizardManager'); - } - else { - $container->register("plugin.manager.views.$type", 'Drupal\views\Plugin\Type\PluginManager') - ->addArgument($type); - } + $container->register("plugin.manager.views.$type", 'Drupal\views\Plugin\ViewsPluginManager') + ->addArgument($type); } }