namespace Drupal\file\Plugin\migrate\process\d6;
-use Drupal\Core\Plugin\ContainerFactoryPluginInterface;
-use Drupal\migrate\Plugin\MigrationInterface;
-use Drupal\migrate\MigrateExecutableInterface;
-use Drupal\migrate\Plugin\MigrateProcessInterface;
-use Drupal\migrate\ProcessPluginBase;
-use Drupal\migrate\Row;
-use Symfony\Component\DependencyInjection\ContainerInterface;
+@trigger_error('CckFile is deprecated in Drupal 8.3.x and will be be removed before Drupal 9.0.x. Use \Drupal\file\Plugin\migrate\process\d6\FieldFile instead.', E_USER_DEPRECATED);
/**
* @MigrateProcessPlugin(
* id = "d6_cck_file"
* )
+ *
+ * @deprecated in Drupal 8.3.x, to be removed before Drupal 9.0.x. Use
+ * \Drupal\file\Plugin\migrate\process\d6\FieldFile instead.
+ *
+ * @see https://www.drupal.org/node/2751897
*/
-class CckFile extends ProcessPluginBase implements ContainerFactoryPluginInterface {
-
- /**
- * The migration process plugin, configured for lookups in d6_file.
- *
- * @var \Drupal\migrate\Plugin\MigrateProcessInterface
- */
- protected $migrationPlugin;
-
- /**
- * Constructs a CckFile plugin instance.
- *
- * @param array $configuration
- * The plugin configuration.
- * @param string $plugin_id
- * The plugin ID.
- * @param mixed $plugin_definition
- * The plugin definition.
- * @param \Drupal\migrate\Plugin\MigrationInterface $migration
- * The current migration.
- * @param \Drupal\migrate\Plugin\MigrateProcessInterface $migration_plugin
- * An instance of the 'migration' process plugin.
- */
- public function __construct(array $configuration, $plugin_id, $plugin_definition, MigrationInterface $migration, MigrateProcessInterface $migration_plugin) {
- parent::__construct($configuration, $plugin_id, $plugin_definition);
- $this->migration = $migration;
- $this->migrationPlugin = $migration_plugin;
- }
-
- /**
- * {@inheritdoc}
- */
- public static function create(ContainerInterface $container, array $configuration, $plugin_id, $plugin_definition, MigrationInterface $migration = NULL) {
- // Configure the migration process plugin to look up migrated IDs from
- // a d6 file migration.
- $migration_plugin_configuration = $configuration + [
- 'migration' => 'd6_file',
- 'source' => ['fid'],
- ];
-
- return new static(
- $configuration,
- $plugin_id,
- $plugin_definition,
- $migration,
- $container->get('plugin.manager.migrate.process')->createInstance('migration', $migration_plugin_configuration, $migration)
- );
- }
-
- /**
- * {@inheritdoc}
- */
- public function transform($value, MigrateExecutableInterface $migrate_executable, Row $row, $destination_property) {
- $options = unserialize($value['data']);
-
- // Try to look up the ID of the migrated file. If one cannot be found, it
- // means the file referenced by the current field item did not migrate for
- // some reason -- file migration is notoriously brittle -- and we do NOT
- // want to send invalid file references into the field system (it causes
- // fatals), so return an empty item instead.
- if ($fid = $this->migrationPlugin->transform($value['fid'], $migrate_executable, $row, $destination_property)) {
- return [
- 'target_id' => $fid,
- 'display' => $value['list'],
- 'description' => isset($options['description']) ? $options['description'] : '',
- 'alt' => isset($options['alt']) ? $options['alt'] : '',
- 'title' => isset($options['title']) ? $options['title'] : '',
- ];
- }
- else {
- return [];
- }
- }
-
-}
+class CckFile extends FieldFile {}