cache = $cacheFactory->createLocal('route'); parent::__construct($logger, $request, $config, $eventLogger, $container, $appManager); } /** * Generate url based on $name and $parameters * * @param string $name Name of the route to use. * @param array $parameters Parameters for the route * @param bool $absolute * @return string */ public function generate($name, $parameters = [], $absolute = false) { asort($parameters); $key = $this->context->getHost() . '#' . $this->context->getBaseUrl() . $name . sha1(json_encode($parameters)) . (int)$absolute; $cachedKey = $this->cache->get($key); if ($cachedKey) { return $cachedKey; } else { $url = parent::generate($name, $parameters, $absolute); if ($url) { $this->cache->set($key, $url, 3600); } return $url; } } }