PluginSettingsBase
abstract class PluginSettingsBase extends PluginBase implements PluginSettingsInterface, DependentPluginInterface (View source)
Base class for the Field API plugins.
This class handles lazy replacement of default settings values.
Traits
Wrapper methods for \Drupal\Core\StringTranslation\TranslationInterface.
Provides dependency injection friendly methods for serialization.
Provides a trait for the messenger service.
Constants
| DERIVATIVE_SEPARATOR |
A string which is used to separate base plugin IDs from the derivative ID. |
Properties
| protected string | $pluginId | The plugin_id. |
from PluginBase |
| protected array | $pluginDefinition | The plugin implementation definition. |
from PluginBase |
| protected array | $configuration | Configuration information passed into the plugin. |
from PluginBase |
| protected TranslationInterface | $stringTranslation | The string translation service. |
from StringTranslationTrait |
| protected array | $_serviceIds | An array of service IDs keyed by property name used for serialization. |
from DependencySerializationTrait |
| protected array | $_entityStorages | An array of entity type IDs keyed by the property name of their storages. |
from DependencySerializationTrait |
| protected MessengerInterface | $messenger | The messenger. |
from MessengerTrait |
| protected array | $settings | The plugin settings. |
|
| protected array | $thirdPartySettings | The plugin settings injected by third party modules. |
|
| protected bool | $defaultSettingsMerged | Whether default settings have been merged into the current $settings. |
Methods
Constructs a \Drupal\Component\Plugin\PluginBase object.
Translates a string to the current language or to a given language.
Formats a string containing a count of items.
Returns the number of plurals supported by a given language.
Gets the string translation service.
Defines the default settings for this plugin.
Returns the array of settings, including defaults for missing settings.
Returns the value of a setting, or its default value if absent.
Merges default settings values into $settings.
Sets the settings for the plugin.
Sets the value of a setting for the plugin.
Gets all third-party settings of a given module.
Gets the value of a third-party setting.
Sets the value of a third-party setting.
Unsets a third-party setting.
Gets the list of third parties that store information.
Calculates dependencies for the configured plugin.
Informs the plugin that some configuration it depends on will be deleted.
Details
__construct(array $configuration, string $plugin_id, mixed $plugin_definition)
Constructs a \Drupal\Component\Plugin\PluginBase object.
string
getPluginId()
Gets the plugin_id of the plugin instance.
string
getBaseId()
Gets the base_plugin_id of the plugin instance.
string|null
getDerivativeId()
Gets the derivative_id of the plugin instance.
array
getPluginDefinition()
Gets the definition of the plugin implementation.
bool
isConfigurable()
Determines if the plugin is configurable.
protected TranslatableMarkup
t(string $string, array $args = [], array $options = [])
Translates a string to the current language or to a given language.
See \Drupal\Core\StringTranslation\TranslatableMarkup::__construct() for important security information and usage guidelines.
In order for strings to be localized, make them available in one of the ways supported by the
protected
formatPlural($count, $singular, $plural, array $args = [], array $options = [])
Formats a string containing a count of items.
protected
getNumberOfPlurals($langcode = NULL)
Returns the number of plurals supported by a given language.
protected TranslationInterface
getStringTranslation()
Gets the string translation service.
$this
setStringTranslation(TranslationInterface $translation)
Sets the string translation service to use.
__sleep()
{@inheritdoc}
__wakeup()
{@inheritdoc}
setMessenger(MessengerInterface $messenger)
Sets the messenger.
MessengerInterface
messenger()
Gets the messenger.
static array
defaultSettings()
Defines the default settings for this plugin.
array
getSettings()
Returns the array of settings, including defaults for missing settings.
mixed
getSetting(string $key)
Returns the value of a setting, or its default value if absent.
protected
mergeDefaults()
Merges default settings values into $settings.
$this
setSettings(array $settings)
Sets the settings for the plugin.
$this
setSetting(string $key, mixed $value)
Sets the value of a setting for the plugin.
array
getThirdPartySettings(string $module = NULL)
Gets all third-party settings of a given module.
mixed
getThirdPartySetting(string $module, string $key, mixed $default = NULL)
Gets the value of a third-party setting.
$this
setThirdPartySetting(string $module, string $key, mixed $value)
Sets the value of a third-party setting.
mixed
unsetThirdPartySetting(string $module, string $key)
Unsets a third-party setting.
array
getThirdPartyProviders()
Gets the list of third parties that store information.
array
calculateDependencies()
Calculates dependencies for the configured plugin.
Dependencies are saved in the plugin's configuration entity and are used to determine configuration synchronization order. For example, if the plugin integrates with specific user roles, this method should return an array of dependencies listing the specified roles.
bool
onDependencyRemoval(array $dependencies)
Informs the plugin that some configuration it depends on will be deleted.
This method allows plugins to keep their configuration up-to-date when a dependency calculated with ::calculateDependencies() is removed. For example, an entity view display contains a formatter having a setting pointing to an arbitrary config entity. When that config entity is deleted, this method is called by the view display to react to the dependency removal by updating its configuration.
This method must return TRUE if the removal event updated the plugin configuration or FALSE otherwise.