interface CacheContextInterface

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

Provides an interface for defining a cache context service.

Hierarchy

Expanded class hierarchy of CacheContextInterface

All classes that implement CacheContextInterface

7 files declare their use of CacheContextInterface
BookNavigationCacheContext.php in core/modules/book/src/Cache/BookNavigationCacheContext.php
CacheContextsManagerTest.php in core/tests/Drupal/Tests/Core/Cache/Context/CacheContextsManagerTest.php
ConfigOverrideIntegrationTestCacheContext.php in core/modules/config/tests/config_override_integration_test/src/Cache/ConfigOverrideIntegrationTestCacheContext.php
EntityTestViewGrantsCacheContext.php in core/modules/system/tests/modules/entity_test/src/Cache/EntityTestViewGrantsCacheContext.php
PirateDayCacheContext.php in core/modules/config/tests/config_override_test/src/Cache/PirateDayCacheContext.php

... See full list

File

core/lib/Drupal/Core/Cache/Context/CacheContextInterface.php, line 8

Namespace

Drupal\Core\Cache\Context
View source
interface CacheContextInterface {
    
    /**
     * Returns the label of the cache context.
     *
     * @return string
     *   The label of the cache context.
     */
    public static function getLabel();
    
    /**
     * Returns the string representation of the cache context.
     *
     * A cache context service's name is used as a token (placeholder) cache key,
     * and is then replaced with the string returned by this method.
     *
     * @return string
     *   The string representation of the cache context.
     */
    public function getContext();
    
    /**
     * Gets the cacheability metadata for the context.
     *
     * There are three valid cases for the returned CacheableMetadata object:
     * - An empty object means this can be optimized away safely.
     * - A max-age of 0 means that this context can never be optimized away. It
     *   will never bubble up and cache tags will not be used.
     * - Any non-zero max-age and cache tags will bubble up into the cache item
     *   if this is optimized away to allow for invalidation if the context
     *   value changes.
     *
     *
     * @return \Drupal\Core\Cache\CacheableMetadata
     *   A cacheable metadata object.
     */
    public function getCacheableMetadata();

}

Members

Title Sort descending Modifiers Object type Summary Overrides
CacheContextInterface::getCacheableMetadata public function Gets the cacheability metadata for the context. 22
CacheContextInterface::getContext public function Returns the string representation of the cache context. 22
CacheContextInterface::getLabel public static function Returns the label of the cache context. 22

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