if (empty($allowed_packages)) { $this->io->
write("Nothing scaffolded because no packages are allowed in the top-level composer.json file."
);
return;
} // Call any pre-scaffold scripts that may be defined.
$dispatcher =
new EventDispatcher($this->composer,
$this->io
);
$dispatcher->
dispatch(self::PRE_DRUPAL_SCAFFOLD_CMD
);
// Fetch the list of file mappings from each allowed package and normalize
// them.
$file_mappings =
$this->
getFileMappingsFromPackages($allowed_packages);
$location_replacements =
$this->manageOptions->
getLocationReplacements();
$scaffold_options =
$this->manageOptions->
getOptions();
// Create a collection of scaffolded files to process. This determines which
// take priority and which are combined.
$scaffold_files =
new ScaffoldFileCollection($file_mappings,
$location_replacements);
// Get the scaffold files whose contents on disk match what we are about to
// write. We can remove these from consideration, as rewriting would be a
// no-op.