public function FeaturesManager::assignPackageDependencies in Features 8.3
Same name and namespace in other branches
- 8.4 src/FeaturesManager.php \Drupal\features\FeaturesManager::assignPackageDependencies()
Assigns dependencies from config items into the package.
Parameters
\Drupal\features\Package[] $package: An array of packages. NULL for all packages.
Overrides FeaturesManagerInterface::assignPackageDependencies
File
- src/
FeaturesManager.php, line 755
Class
- FeaturesManager
- The FeaturesManager provides helper functions for building packages.
Namespace
Drupal\featuresCode
public function assignPackageDependencies(Package $package = NULL) {
if (is_null($package)) {
$packages = $this
->getPackages();
}
else {
$packages = [
$package,
];
}
$module_list = $this->moduleHandler
->getModuleList();
$config_collection = $this
->getConfigCollection();
foreach ($packages as $package) {
$module_dependencies = [];
foreach ($package
->getConfig() as $item_name) {
if (isset($config_collection[$item_name])) {
$dependencies = $this
->getConfigDependency($config_collection[$item_name], $module_list);
$module_dependencies = array_merge($module_dependencies, $dependencies);
}
}
$package
->setDependencies($this
->mergeUniqueItems($package
->getDependencies(), $module_dependencies));
}
}