SubProcess
class SubProcess extends ProcessPluginBase (View source)
Runs an array of arrays through its own process pipeline.
The sub_process plugin accepts an array of associative arrays and runs each one through its own process pipeline, producing a newly keyed associative array of transformed values.
Available configuration keys:
- process: the plugin(s) that will process each element of the source.
- key: runs the process pipeline for the key to determine a new dynamic name. If the new dynamic name is NULL then the result of the sub_process pipeline is ignored.
- include_source: (optional) If TRUE, all source plugin configuration and values will be copied into the sub-processed row in a new property named for the source_key configuration value (see below). Defaults to FALSE.
- source_key: (optional) If include_source is TRUE, this is the name of the property of the sub-processed row which will contain the source configuration and values. Ignored if include_source is FALSE. Defaults to 'source' if no value is provided.
Example 1:
This example demonstrates how migration_lookup process plugin can be applied on the following source data.
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 |
Methods
SubProcess constructor.
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.
Performs the associated process.
Indicates whether the returned value requires multiple handling.
Runs the process pipeline for the key to determine its dynamic name.
Details
__construct(array $configuration, string $plugin_id, mixed $plugin_definition)
SubProcess constructor.
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.
string|array
transform(mixed $value, MigrateExecutableInterface $migrate_executable, Row $row, string $destination_property)
Performs the associated process.
bool
multiple()
Indicates whether the returned value requires multiple handling.
protected mixed
transformKey(string|int $key, MigrateExecutableInterface $migrate_executable, Row $row)
Runs the process pipeline for the key to determine its dynamic name.