You are here

abstract class MatcherBase in Linkit 8.4

Same name and namespace in other branches
  1. 8.5 src/MatcherBase.php \Drupal\linkit\MatcherBase

Provides a base class for matchers.

Hierarchy

Expanded class hierarchy of MatcherBase

See also

Plugin API

1 file declares its use of MatcherBase
DummyMatcher.php in tests/linkit_test/src/Plugin/Linkit/Matcher/DummyMatcher.php
Contains \Drupal\linkit_test\Plugin\Linkit\Matcher\DummyMatcher.

File

src/MatcherBase.php, line 18
Contains \Drupal\linkit\MatcherBase.

Namespace

Drupal\linkit
View source
abstract class MatcherBase extends PluginBase implements MatcherInterface, ContainerFactoryPluginInterface {

  /**
   * The matcher ID.
   *
   * @var string
   */
  protected $uuid;

  /**
   * The weight of the matcher compared to others in a matcher collection.
   *
   * @var int
   */
  protected $weight = 0;

  /**
   * {@inheritdoc}
   */
  public function __construct(array $configuration, $plugin_id, $plugin_definition) {
    parent::__construct($configuration, $plugin_id, $plugin_definition);
    $this
      ->setConfiguration($configuration);
  }

  /**
   * {@inheritdoc}
   */
  public function getUuid() {
    return $this->uuid;
  }

  /**
   * {@inheritdoc}
   */
  public function getLabel() {
    return $this->pluginDefinition['label'];
  }

  /**
   * {@inheritdoc}
   */
  public function getSummary() {
    return array();
  }

  /**
   * {@inheritdoc}
   */
  public function getWeight() {
    return $this->weight;
  }

  /**
   * {@inheritdoc}
   */
  public function setWeight($weight) {
    return $this->weight = $weight;
  }

  /**
   * {@inheritdoc}
   */
  public function getConfiguration() {
    return [
      'uuid' => $this
        ->getUuid(),
      'id' => $this
        ->getPluginId(),
      'weight' => $this
        ->getWeight(),
      'settings' => $this->configuration,
    ];
  }

  /**
   * {@inheritdoc}
   */
  public function setConfiguration(array $configuration) {
    $configuration += [
      'uuid' => '',
      'weight' => '0',
      'settings' => [],
    ];
    $this->configuration = $configuration['settings'] + $this
      ->defaultConfiguration();
    $this->uuid = $configuration['uuid'];
    $this->weight = $configuration['weight'];
    return $this;
  }

  /**
   * {@inheritdoc}
   */
  public function defaultConfiguration() {
    return [];
  }

  /**
   * {@inheritdoc}
   */
  public function calculateDependencies() {
    return [];
  }

}

Members

Namesort descending Modifiers Type Description Overrides
ContainerFactoryPluginInterface::create public static function Creates an instance of the plugin. 112
DependencySerializationTrait::$_entityStorages protected property An array of entity type IDs keyed by the property name of their storages.
DependencySerializationTrait::$_serviceIds protected property An array of service IDs keyed by property name used for serialization.
DependencySerializationTrait::__sleep public function 1
DependencySerializationTrait::__wakeup public function 2
MatcherBase::$uuid protected property The matcher ID.
MatcherBase::$weight protected property The weight of the matcher compared to others in a matcher collection.
MatcherBase::calculateDependencies public function Calculates dependencies for the configured plugin. Overrides DependentPluginInterface::calculateDependencies 4
MatcherBase::defaultConfiguration public function Gets default configuration for this plugin. Overrides ConfigurablePluginInterface::defaultConfiguration 2
MatcherBase::getConfiguration public function Gets this plugin's configuration. Overrides ConfigurablePluginInterface::getConfiguration
MatcherBase::getLabel public function Returns the matcher label. Overrides MatcherInterface::getLabel
MatcherBase::getSummary public function Returns the summarized configuration of the matcher. Overrides MatcherInterface::getSummary 1
MatcherBase::getUuid public function Returns the unique ID representing the matcher. Overrides MatcherInterface::getUuid
MatcherBase::getWeight public function Returns the weight of the matcher. Overrides MatcherInterface::getWeight
MatcherBase::setConfiguration public function Sets the configuration for this plugin instance. Overrides ConfigurablePluginInterface::setConfiguration
MatcherBase::setWeight public function Sets the weight for the matcher. Overrides MatcherInterface::setWeight
MatcherBase::__construct public function Constructs a \Drupal\Component\Plugin\PluginBase object. Overrides PluginBase::__construct 1
MatcherInterface::getMatches public function Gets an array with search matches that will be presented in the autocomplete widget. 3
MessengerTrait::$messenger protected property The messenger. 29
MessengerTrait::messenger public function Gets the messenger. 29
MessengerTrait::setMessenger public function Sets the messenger.
PluginBase::$configuration protected property Configuration information passed into the plugin. 1
PluginBase::$pluginDefinition protected property The plugin implementation definition. 1
PluginBase::$pluginId protected property The plugin_id.
PluginBase::DERIVATIVE_SEPARATOR constant A string which is used to separate base plugin IDs from the derivative ID.
PluginBase::getBaseId public function Gets the base_plugin_id of the plugin instance. Overrides DerivativeInspectionInterface::getBaseId
PluginBase::getDerivativeId public function Gets the derivative_id of the plugin instance. Overrides DerivativeInspectionInterface::getDerivativeId
PluginBase::getPluginDefinition public function Gets the definition of the plugin implementation. Overrides PluginInspectionInterface::getPluginDefinition 3
PluginBase::getPluginId public function Gets the plugin_id of the plugin instance. Overrides PluginInspectionInterface::getPluginId
PluginBase::isConfigurable public function Determines if the plugin is configurable.
StringTranslationTrait::$stringTranslation protected property The string translation service. 1
StringTranslationTrait::formatPlural protected function Formats a string containing a count of items.
StringTranslationTrait::getNumberOfPlurals protected function Returns the number of plurals supported by a given language.
StringTranslationTrait::getStringTranslation protected function Gets the string translation service.
StringTranslationTrait::setStringTranslation public function Sets the string translation service to use. 2
StringTranslationTrait::t protected function Translates a string to the current language or to a given language.