[$source,
$destination] =
$value;
// If the source path or URI represents a remote resource, delegate to the
// download plugin.
if (!
$this->
isLocalUri($source)) { return $this->downloadPlugin->
transform($value,
$migrate_executable,
$row,
$destination_property);
} // Ensure the source file exists, if it's a local URI or path.
if (!
file_exists($source)) { throw new MigrateException("File '
$source' does not exist"
);
} // If the start and end file is exactly the same, there is nothing to do.
if ($this->
isLocationUnchanged($source,
$destination)) { return $destination;
} // Check if a writable directory exists, and if not try to create it.
$dir =
$this->
getDirectory($destination);
// If the directory exists and is writable, avoid
// \Drupal\Core\File\FileSystemInterface::prepareDirectory() call and write