Chris@0: alterInfo('migrate_' . $type . '_info'); Chris@0: $this->setCacheBackend($cache_backend, 'migrate_plugins_' . $type); Chris@0: } Chris@0: Chris@0: /** Chris@0: * {@inheritdoc} Chris@0: */ Chris@0: public function createInstance($plugin_id, array $configuration = [], MigrationInterface $migration = NULL) { Chris@0: $plugin_definition = $this->getDefinition($plugin_id); Chris@0: $plugin_class = DefaultFactory::getPluginClass($plugin_id, $plugin_definition); Chris@0: // If the plugin provides a factory method, pass the container to it. Chris@0: if (is_subclass_of($plugin_class, 'Drupal\Core\Plugin\ContainerFactoryPluginInterface')) { Chris@0: $plugin = $plugin_class::create(\Drupal::getContainer(), $configuration, $plugin_id, $plugin_definition, $migration); Chris@0: } Chris@0: else { Chris@0: $plugin = new $plugin_class($configuration, $plugin_id, $plugin_definition, $migration); Chris@0: } Chris@0: return $plugin; Chris@0: } Chris@0: Chris@0: }