Chris@0: basePluginId = $base_plugin_id; Chris@0: $this->migrationPluginManager = $migration_plugin_manager; Chris@0: } Chris@0: Chris@0: /** Chris@0: * {@inheritdoc} Chris@0: */ Chris@0: public static function create(ContainerInterface $container, $base_plugin_id) { Chris@0: return new static( Chris@0: $base_plugin_id, Chris@0: $container->get('plugin.manager.migration') Chris@0: ); Chris@0: } Chris@0: Chris@0: /** Chris@0: * {@inheritdoc} Chris@0: */ Chris@0: public function getDerivativeDefinitions($base_plugin_definition, $base_plugin_definitions = NULL) { Chris@0: try { Chris@0: foreach (static::getSourcePlugin('d6_taxonomy_vocabulary') as $row) { Chris@0: $source_vid = $row->getSourceProperty('vid'); Chris@0: $definition = $base_plugin_definition; Chris@0: $definition['source']['vid'] = $source_vid; Chris@0: // migrate_drupal_migration_plugins_alter() adds to this definition. Chris@0: $this->derivatives[$source_vid] = $definition; Chris@0: } Chris@0: } Chris@0: catch (\Exception $e) { Chris@0: // It is possible no D6 tables are loaded so just eat exceptions. Chris@0: } Chris@0: return $this->derivatives; Chris@0: } Chris@0: Chris@0: }