annotate core/lib/Drupal/Core/Action/ConfigurableActionBase.php @ 5:12f9dff5fda9 tip

Update to Drupal core 8.7.1
author Chris Cannam
date Thu, 09 May 2019 15:34:47 +0100
parents c75dbcec494b
children
rev   line source
Chris@0 1 <?php
Chris@0 2
Chris@0 3 namespace Drupal\Core\Action;
Chris@0 4
Chris@5 5 use Drupal\Component\Plugin\ConfigurableInterface;
Chris@0 6 use Drupal\Component\Plugin\ConfigurablePluginInterface;
Chris@5 7 use Drupal\Component\Plugin\DependentPluginInterface;
Chris@0 8 use Drupal\Core\Form\FormStateInterface;
Chris@0 9 use Drupal\Core\Plugin\PluginFormInterface;
Chris@0 10
Chris@0 11 /**
Chris@0 12 * Provides a base implementation for a configurable Action plugin.
Chris@0 13 */
Chris@5 14 abstract class ConfigurableActionBase extends ActionBase implements ConfigurableInterface, DependentPluginInterface, ConfigurablePluginInterface, PluginFormInterface {
Chris@0 15
Chris@0 16 /**
Chris@0 17 * {@inheritdoc}
Chris@0 18 */
Chris@0 19 public function __construct(array $configuration, $plugin_id, $plugin_definition) {
Chris@0 20 parent::__construct($configuration, $plugin_id, $plugin_definition);
Chris@0 21
Chris@0 22 $this->setConfiguration($configuration);
Chris@0 23 }
Chris@0 24
Chris@0 25 /**
Chris@0 26 * {@inheritdoc}
Chris@0 27 */
Chris@0 28 public function defaultConfiguration() {
Chris@0 29 return [];
Chris@0 30 }
Chris@0 31
Chris@0 32 /**
Chris@0 33 * {@inheritdoc}
Chris@0 34 */
Chris@0 35 public function getConfiguration() {
Chris@0 36 return $this->configuration;
Chris@0 37 }
Chris@0 38
Chris@0 39 /**
Chris@0 40 * {@inheritdoc}
Chris@0 41 */
Chris@0 42 public function setConfiguration(array $configuration) {
Chris@0 43 $this->configuration = $configuration + $this->defaultConfiguration();
Chris@0 44 }
Chris@0 45
Chris@0 46 /**
Chris@0 47 * {@inheritdoc}
Chris@0 48 */
Chris@0 49 public function validateConfigurationForm(array &$form, FormStateInterface $form_state) {
Chris@0 50 }
Chris@0 51
Chris@0 52 /**
Chris@0 53 * {@inheritdoc}
Chris@0 54 */
Chris@0 55 public function calculateDependencies() {
Chris@0 56 return [];
Chris@0 57 }
Chris@0 58
Chris@0 59 }