You are here

public function Context::addCacheableDependency in Drupal 8

Same name and namespace in other branches
  1. 9 core/lib/Drupal/Core/Plugin/Context/Context.php \Drupal\Core\Plugin\Context\Context::addCacheableDependency()

Adds a dependency on an object: merges its cacheability metadata.

For example, when a context depends on some configuration, an entity, or an access result, we must make sure their cacheability metadata is present on the response. This method makes doing that simple.

Parameters

\Drupal\Core\Cache\CacheableDependencyInterface|mixed $dependency: The dependency. If the object implements CacheableDependencyInterface, then its cacheability metadata will be used. Otherwise, the passed in object must be assumed to be uncacheable, so max-age 0 is set.

Return value

$this

Overrides ContextInterface::addCacheableDependency

See also

\Drupal\Core\Cache\CacheableMetadata::createFromObject()

1 call to Context::addCacheableDependency()
Context::setContextValue in core/lib/Drupal/Core/Plugin/Context/Context.php
Sets the context value.

File

core/lib/Drupal/Core/Plugin/Context/Context.php, line 145

Class

Context
A Drupal specific context wrapper class.

Namespace

Drupal\Core\Plugin\Context

Code

public function addCacheableDependency($dependency) {
  $this->cacheabilityMetadata = $this->cacheabilityMetadata
    ->merge(CacheableMetadata::createFromObject($dependency));
  return $this;
}