class PathCacheContext

Same name in other branches
  1. 9 core/lib/Drupal/Core/Cache/Context/PathCacheContext.php \Drupal\Core\Cache\Context\PathCacheContext
  2. 8.9.x core/lib/Drupal/Core/Cache/Context/PathCacheContext.php \Drupal\Core\Cache\Context\PathCacheContext
  3. 11.x core/lib/Drupal/Core/Cache/Context/PathCacheContext.php \Drupal\Core\Cache\Context\PathCacheContext

Defines the PathCacheContext service, for "per URL path" caching.

Cache context ID: 'url.path'.

(This allows for caching relative URLs.)

Hierarchy

Expanded class hierarchy of PathCacheContext

See also

\Symfony\Component\HttpFoundation\Request::getBasePath()

\Symfony\Component\HttpFoundation\Request::getPathInfo()

1 string reference to 'PathCacheContext'
core.services.yml in core/core.services.yml
core/core.services.yml
1 service uses PathCacheContext
cache_context.url.path in core/core.services.yml
Drupal\Core\Cache\Context\PathCacheContext

File

core/lib/Drupal/Core/Cache/Context/PathCacheContext.php, line 17

Namespace

Drupal\Core\Cache\Context
View source
class PathCacheContext extends RequestStackCacheContextBase implements CacheContextInterface {
    
    /**
     * {@inheritdoc}
     */
    public static function getLabel() {
        return t('Path');
    }
    
    /**
     * {@inheritdoc}
     */
    public function getContext() {
        $request = $this->requestStack
            ->getCurrentRequest();
        return $request->getBasePath() . $request->getPathInfo();
    }
    
    /**
     * {@inheritdoc}
     */
    public function getCacheableMetadata() {
        return new CacheableMetadata();
    }

}

Members

Title Sort descending Modifiers Object type Summary Overriden Title
PathCacheContext::getCacheableMetadata public function Overrides CacheContextInterface::getCacheableMetadata
PathCacheContext::getContext public function Overrides CacheContextInterface::getContext
PathCacheContext::getLabel public static function Overrides CacheContextInterface::getLabel
RequestStackCacheContextBase::$requestStack protected property The request stack.
RequestStackCacheContextBase::__construct public function Constructs a new RequestStackCacheContextBase class.

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.