public function visit(Visitor $visitor, Generator $generator, $data)
{
$visitor->visitValueObject($data->value);
if ($this->getParameter('content.view_cache') !== true) {
return;
}
$response = $visitor->getResponse();
$response->setPublic();
$response->setVary('Accept');
if ($this->getParameter('content.ttl_cache') === true) {
$response->setSharedMaxAge($this->getParameter('content.default_ttl'));
$request = $this->getCurrentRequest();
if (isset($request) && $request->headers->has('X-User-Hash')) {
$response->setVary('X-User-Hash', false);
}
}
if (isset($data->cacheTags['locationId'])) {
$visitor->getResponse()->headers->set('X-Location-Id', $data->cacheTags['locationId']);
}
}