Issue #2835586 by Grayside, heddn, tjh: Allow customization of stub rows from Migration process plugin

8.4.x
Nathaniel Catchpole 2017-06-12 15:05:51 +01:00
parent 5e2e4a8605
commit bae384ae3c
1 changed files with 20 additions and 1 deletions

View File

@ -217,7 +217,7 @@ class MigrationLookup extends ProcessPluginBase implements ContainerFactoryPlugi
$values[$source_id] = $source_id_values[$migration->id()][$index];
}
$stub_row = new Row($values + $migration->getSourceConfiguration(), $source_ids, TRUE);
$stub_row = $this->createStubRow($values + $migration->getSourceConfiguration(), $source_ids);
// Do a normal migration with the stub row.
$migrate_executable->processRow($stub_row, $process);
@ -257,4 +257,23 @@ class MigrationLookup extends ProcessPluginBase implements ContainerFactoryPlugi
}
}
/**
* Create a stub row source for later import as stub data.
*
* This simple wrapper of the Row constructor allows sub-classing plugins to
* have more control over the row.
*
* @param array $values
* An array of values to add as properties on the object.
* @param array $source_ids
* An array containing the IDs of the source using the keys as the field
* names.
*
* @return \Drupal\migrate\Row
* The stub row.
*/
protected function createStubRow(array $values, array $source_ids) {
return new Row($values, $source_ids, TRUE);
}
}