/** * Sending back a response to mongrel2 webserver. * * @param Request $request * @param Response $response */ private function sendResponseToMongrel(Request $request, Response $response) { $response->prepare($request); // Map back our Symfony Response to a MongrelResponse. $mongrelResponse = new MongrelResponse($request->attributes->get('mongrel2_uuid'), [$request->attributes->get('mongrel2_listener')]); $mongrelResponse->setContent($response->getContent()); $headers = $response->headers->all(); foreach ($response->headers->getCookies() as $cookie) { $headers['Set-Cookie'][] = $cookie; } $mongrelResponse->setHeaders($headers); $mongrelResponse->setHttpVersion($response->getProtocolVersion()); $mongrelResponse->setStatusCode($response->getStatusCode()); $mongrelResponse->setReasonPhrase(Response::$statusTexts[$response->getStatusCode()]); $this->handler->sendResponse($mongrelResponse); }