logService = $logService; $this->pageAutoGenerationQuery = $pageAutoGenerationQuery; $this->pageQuery = $pageQuery; } /** * @throws InternalServerErrorMaestroException */ public function __invoke(AutoGenerationMessage $message) { $logFile = "auto-generation.log"; $this->logService->setLog('AutoGenerationHandler : Entry-point', $logFile); try { $this->pageAutoGenerationQuery->addPageToGenerate($message->getPages()); $this->logService->setLog(count($message->getPages()) . ' pages stored in DB', $logFile); $content = $this->pageQuery->generatePages($message->getPageOptionsId(), $message->getPageDuplicatesId(), $message->getToken()); $succPos1 = stripos($content, "SUCCESS=") + 8; $succPos2 = stripos($content, "=SUCCESS"); $succ = substr($content, $succPos1, $succPos2 - $succPos1); $this->logService->setLog($succ, $logFile); } catch (Exception $e) { $error = "Error, can't execute auto generation : " . $e->getMessage(); $this->logService->setLog($error, $logFile); throw new UnrecoverableMessageHandlingException($error); } } }