Neos\Flow\Error\AbstractExceptionHandler::buildView PHP Метод

buildView() защищенный Метод

Prepares a Fluid view for rendering the custom error page.
protected buildView ( object $exception, array $renderingOptions ) : Neos\Flow\Mvc\View\ViewInterface
$exception object \Exception or \Throwable
$renderingOptions array Rendering options as defined in the settings
Результат Neos\Flow\Mvc\View\ViewInterface
    protected function buildView($exception, array $renderingOptions)
    {
        $statusCode = 500;
        $referenceCode = null;
        if ($exception instanceof FlowException) {
            $statusCode = $exception->getStatusCode();
            $referenceCode = $exception->getReferenceCode();
        }
        $statusMessage = Response::getStatusMessageByCode($statusCode);
        $viewClassName = $renderingOptions['viewClassName'];
        /** @var ViewInterface $view */
        $view = $viewClassName::createWithOptions($renderingOptions['viewOptions']);
        $view = $this->applyLegacyViewOptions($view, $renderingOptions);
        $httpRequest = Request::createFromEnvironment();
        $request = new ActionRequest($httpRequest);
        $request->setControllerPackageKey('Neos.Flow');
        $uriBuilder = new UriBuilder();
        $uriBuilder->setRequest($request);
        $view->setControllerContext(new ControllerContext($request, new Response(), new Arguments([]), $uriBuilder));
        if (isset($renderingOptions['variables'])) {
            $view->assignMultiple($renderingOptions['variables']);
        }
        $view->assignMultiple(['exception' => $exception, 'renderingOptions' => $renderingOptions, 'statusCode' => $statusCode, 'statusMessage' => $statusMessage, 'referenceCode' => $referenceCode]);
        return $view;
    }