public function MenuActiveTrailsCacheContext::getCacheableMetadata in Drupal 10
Same name and namespace in other branches
- 8 core/lib/Drupal/Core/Cache/Context/MenuActiveTrailsCacheContext.php \Drupal\Core\Cache\Context\MenuActiveTrailsCacheContext::getCacheableMetadata()
- 9 core/lib/Drupal/Core/Cache/Context/MenuActiveTrailsCacheContext.php \Drupal\Core\Cache\Context\MenuActiveTrailsCacheContext::getCacheableMetadata()
Gets the cacheability metadata for the context based on the parameter value.
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.
Parameters
string|null $parameter: The parameter, or NULL to indicate all possible parameter values.
Return value
\Drupal\Core\Cache\CacheableMetadata A cacheable metadata object.
Throws
\LogicException Thrown if the passed in parameter is invalid.
Overrides CalculatedCacheContextInterface::getCacheableMetadata
File
- core/
lib/ Drupal/ Core/ Cache/ Context/ MenuActiveTrailsCacheContext.php, line 42
Class
- MenuActiveTrailsCacheContext
- Defines the MenuActiveTrailsCacheContext service.
Namespace
Drupal\Core\Cache\ContextCode
public function getCacheableMetadata($menu_name = NULL) {
if (!$menu_name) {
throw new \LogicException('No menu name provided for menu.active_trails cache context.');
}
$cacheable_metadata = new CacheableMetadata();
return $cacheable_metadata
->setCacheTags([
"config:system.menu.{$menu_name}",
]);
}