getFilename(), '.xml.twig') !== false; } public function render(InvoiceDocument $document, InvoiceModel $model): Response { $content = $this->renderTwigTemplate($document, $model); $filename = (string) new InvoiceFilename($model); $response = new Response($content); $disposition = $response->headers->makeDisposition(ResponseHeaderBag::DISPOSITION_ATTACHMENT, $filename . '.xml'); $response->headers->set('Content-Type', 'application/xml'); $response->headers->set('Content-Disposition', $disposition); return $response; } }