/** * Render Akeneo PIM requirements * * @param InputInterface $input * @param OutputInterface $output * @param \RequirementCollection $collection * * @throws \RuntimeException */ protected function renderRequirements(InputInterface $input, OutputInterface $output, \RequirementCollection $collection) { $this->renderTable($collection->getMandatoryRequirements(), 'Mandatory requirements', $output); $this->renderTable($collection->getPhpIniRequirements(), 'PHP requirements', $output); $this->renderTable($collection->getOroRequirements(), 'Oro Platform requirements', $output); $this->renderTable($collection->getPimRequirements(), 'Pim requirements', $output); $this->renderTable($collection->getRecommendations(), 'Recommendations', $output); if (count($collection->getFailedRequirements())) { $this->renderTable($collection->getFailedRequirements(), 'Errors', $output); throw new \RuntimeException('Some system requirements are not fulfilled. Please check output messages and fix them'); } }
/** * Adds a requirement collection to the current set of requirements. * * @param RequirementCollection $collection A RequirementCollection instance */ public function addCollection(RequirementCollection $collection) { $this->requirements = array_merge($this->requirements, $collection->all()); }