protected function Migration::findMigrationDependencies in Drupal 9
Same name and namespace in other branches
- 8 core/modules/migrate/src/Plugin/Migration.php \Drupal\migrate\Plugin\Migration::findMigrationDependencies()
- 10 core/modules/migrate/src/Plugin/Migration.php \Drupal\migrate\Plugin\Migration::findMigrationDependencies()
Find migration dependencies from migration_lookup and sub_process plugins.
Parameters
array $process: A process configuration array.
Return value
array The migration dependencies.
1 call to Migration::findMigrationDependencies()
- Migration::getMigrationDependencies in core/
modules/ migrate/ src/ Plugin/ Migration.php - Get the dependencies for this migration.
File
- core/
modules/ migrate/ src/ Plugin/ Migration.php, line 627
Class
- Migration
- Defines the Migration plugin.
Namespace
Drupal\migrate\PluginCode
protected function findMigrationDependencies($process) {
$return = [];
foreach ($this
->getProcessNormalized($process) as $process_pipeline) {
foreach ($process_pipeline as $plugin_configuration) {
// If the migration uses a deriver and has a migration_lookup with
// itself as the source migration, then skip adding dependencies.
// Otherwise the migration will depend on all the variations of itself.
// See d7_taxonomy_term for an example.
if (isset($this->deriver) && $plugin_configuration['plugin'] === 'migration_lookup' && $plugin_configuration['migration'] == $this
->getBaseId()) {
continue;
}
if (in_array($plugin_configuration['plugin'], [
'migration',
'migration_lookup',
], TRUE)) {
$return = array_merge($return, (array) $plugin_configuration['migration']);
}
if (in_array($plugin_configuration['plugin'], [
'iterator',
'sub_process',
], TRUE)) {
$return = array_merge($return, $this
->findMigrationDependencies($plugin_configuration['process']));
}
}
}
return $return;
}