Returns the modules in the collection.
public toArray ( ) : Puli\Manager\Api\Module\Module[] | ||
Résultat | Puli\Manager\Api\Module\Module[] | The modules in the collection. |
/** * {@inheritdoc} */ public function removeModules(Expression $expr) { $this->assertModulesLoaded(); $installInfos = $this->rootModuleFile->getInstallInfos(); $modules = $this->modules->toArray(); foreach ($this->modules->getInstalledModules() as $module) { if ($expr->evaluate($module)) { $this->rootModuleFile->removeInstallInfo($module->getName()); $this->modules->remove($module->getName()); } } if (!$installInfos) { return; } try { $this->jsonStorage->saveRootModuleFile($this->rootModuleFile); } catch (Exception $e) { $this->rootModuleFile->setInstallInfos($installInfos); $this->modules->replace($modules); throw $e; } }
/** * Prints modules with intermediate headers for the module states. * * @param IO $io The I/O * @param ModuleList $modules The modules to print * @param int[] $states The states to print */ private function printModulesByState(IO $io, ModuleList $modules, array $states) { $printStates = count($states) > 1; foreach ($states as $state) { $filteredModules = array_filter($modules->toArray(), function (Module $module) use($state) { return $state === $module->getState(); }); if (0 === count($filteredModules)) { continue; } if ($printStates) { $this->printModuleState($io, $state); } if (ModuleState::NOT_LOADABLE === $state) { $this->printNotLoadableModules($io, $filteredModules, $printStates); } else { $styleTag = ModuleState::ENABLED === $state ? null : 'bad'; $this->printModuleTable($io, $filteredModules, $styleTag, $printStates); } if ($printStates) { $io->writeLine(''); } } }