injectableFactory = $injectableFactory; $this->metadata = $metadata; } public function process(): void { foreach ($this->getActionList() as $action) { $action->process(); } } private function getActionList(): array { $classNameList = $this->getClassNameList(); $list = []; foreach ($classNameList as $className) { $list[] = $this->injectableFactory->create($className); } return $list; } /** * @return string[] */ private function getClassNameList(): array { return $this->metadata->get(['app', 'rebuild', 'actionClassNameList']) ?? []; } }