public function getDecorated(): AbstractHttpCacheKeyGenerator
{ throw new DecorationPatternException(self::
class);
} public function generate(Request
$request): string
{ $uri =
$this->
getRequestUri($request) .
$this->cacheHash;
$event =
new HttpCacheGenerateKeyEvent($request, 'md' .
hash('sha256',
$uri));
$this->eventDispatcher->
dispatch($event);
$hash =
$event->
getHash();
if ($request->cookies->
has(CacheResponseSubscriber::CONTEXT_CACHE_COOKIE
)) { return 'http-cache-' .
hash('sha256',
$hash . '-' .
$request->cookies->
get(CacheResponseSubscriber::CONTEXT_CACHE_COOKIE
));
} if ($request->cookies->
has(CacheResponseSubscriber::CURRENCY_COOKIE
)) { return 'http-cache-' .
hash('sha256',
$hash . '-' .
$request->cookies->
get(CacheResponseSubscriber::CURRENCY_COOKIE
));
}