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