Chris@0: configuration = $configuration; Chris@0: $this->pluginId = $plugin_id; Chris@0: $this->pluginDefinition = $plugin_definition; Chris@18: Chris@18: if ($this instanceof ConfigurablePluginInterface && !$this instanceof ConfigurableInterface) { Chris@18: @trigger_error('Drupal\Component\Plugin\ConfigurablePluginInterface is deprecated in Drupal 8.7.0 and will be removed before Drupal 9.0.0. You should implement ConfigurableInterface and/or DependentPluginInterface directly as needed. If you implement ConfigurableInterface you may choose to implement ConfigurablePluginInterface in Drupal 8 as well for maximum compatibility, however this must be removed prior to Drupal 9. See https://www.drupal.org/node/2946161', E_USER_DEPRECATED); Chris@18: } Chris@0: } Chris@0: Chris@0: /** Chris@0: * {@inheritdoc} Chris@0: */ Chris@0: public function getPluginId() { Chris@0: return $this->pluginId; Chris@0: } Chris@0: Chris@0: /** Chris@0: * {@inheritdoc} Chris@0: */ Chris@0: public function getBaseId() { Chris@0: $plugin_id = $this->getPluginId(); Chris@0: if (strpos($plugin_id, static::DERIVATIVE_SEPARATOR)) { Chris@0: list($plugin_id) = explode(static::DERIVATIVE_SEPARATOR, $plugin_id, 2); Chris@0: } Chris@0: return $plugin_id; Chris@0: } Chris@0: Chris@0: /** Chris@0: * {@inheritdoc} Chris@0: */ Chris@0: public function getDerivativeId() { Chris@0: $plugin_id = $this->getPluginId(); Chris@0: $derivative_id = NULL; Chris@0: if (strpos($plugin_id, static::DERIVATIVE_SEPARATOR)) { Chris@0: list(, $derivative_id) = explode(static::DERIVATIVE_SEPARATOR, $plugin_id, 2); Chris@0: } Chris@0: return $derivative_id; Chris@0: } Chris@0: Chris@0: /** Chris@0: * {@inheritdoc} Chris@0: */ Chris@0: public function getPluginDefinition() { Chris@0: return $this->pluginDefinition; Chris@0: } Chris@0: Chris@18: /** Chris@18: * Determines if the plugin is configurable. Chris@18: * Chris@18: * @return bool Chris@18: * A boolean indicating whether the plugin is configurable. Chris@18: */ Chris@18: public function isConfigurable() { Chris@18: return $this instanceof ConfigurableInterface || $this instanceof ConfigurablePluginInterface; Chris@18: } Chris@18: Chris@0: }