interface CacheableDependencyInterface in Drupal 9
Same name and namespace in other branches
- 8 core/lib/Drupal/Core/Cache/CacheableDependencyInterface.php \Drupal\Core\Cache\CacheableDependencyInterface
- 10 core/lib/Drupal/Core/Cache/CacheableDependencyInterface.php \Drupal\Core\Cache\CacheableDependencyInterface
Defines an interface for objects which may be used by other cached objects.
All cacheability metadata exposed in this interface is bubbled to parent objects when they are cached: if a child object needs to be varied by certain cache contexts, invalidated by certain cache tags, expire after a certain maximum age, then so should any parent object.
Hierarchy
- interface \Drupal\Core\Cache\CacheableDependencyInterface
Expanded class hierarchy of CacheableDependencyInterface
All classes that implement CacheableDependencyInterface
Related topics
85 files declare their use of CacheableDependencyInterface
- AccessAwareRouter.php in core/
lib/ Drupal/ Core/ Routing/ AccessAwareRouter.php - AccessResult.php in core/
lib/ Drupal/ Core/ Access/ AccessResult.php - AccessResultTest.php in core/
tests/ Drupal/ Tests/ Core/ Access/ AccessResultTest.php - Contains \Drupal\Tests\Core\Access\AccessResultTest.
- ArgumentPluginBase.php in core/
modules/ views/ src/ Plugin/ views/ argument/ ArgumentPluginBase.php - BlockAccessControlHandler.php in core/
modules/ block/ src/ BlockAccessControlHandler.php
File
- core/
lib/ Drupal/ Core/ Cache/ CacheableDependencyInterface.php, line 15
Namespace
Drupal\Core\CacheView source
interface CacheableDependencyInterface {
/**
* The cache contexts associated with this object.
*
* These identify a specific variation/representation of the object.
*
* Cache contexts are tokens: placeholders that are converted to cache keys by
* the @cache_contexts_manager service. The replacement value depends on the
* request context (the current URL, language, and so on). They're converted
* before storing an object in cache.
*
* @return string[]
* An array of cache context tokens, used to generate a cache ID.
*
* @see \Drupal\Core\Cache\Context\CacheContextsManager::convertTokensToKeys()
*/
public function getCacheContexts();
/**
* The cache tags associated with this object.
*
* When this object is modified, these cache tags will be invalidated.
*
* @return string[]
* A set of cache tags.
*/
public function getCacheTags();
/**
* The maximum age for which this object may be cached.
*
* @return int
* The maximum time in seconds that this object may be cached.
*/
public function getCacheMaxAge();
}
Members
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
CacheableDependencyInterface:: |
public | function | The cache contexts associated with this object. | 34 |
CacheableDependencyInterface:: |
public | function | The maximum age for which this object may be cached. | 34 |
CacheableDependencyInterface:: |
public | function | The cache tags associated with this object. | 27 |