class ContextCacheKeys extends CacheableMetadata (View source)

A value object to store generated cache keys with its cacheability metadata.

Traits

Trait for \Drupal\Core\Cache\RefinableCacheableDependencyInterface.

Trait for \Drupal\Core\Cache\CacheableDependencyInterface.

Properties

protected string[] $cacheContexts

Cache contexts.

from  CacheableDependencyTrait
protected string[] $cacheTags

Cache tags.

from  CacheableDependencyTrait
protected int $cacheMaxAge

Cache max-age.

from  CacheableDependencyTrait
protected string[] $keys

The generated cache keys.

Methods

$this
setCacheability(CacheableDependencyInterface $cacheability)

Sets cacheability; useful for value object constructors.

getCacheTags()

{@inheritdoc}

addCacheableDependency($other_object)

{@inheritdoc}

addCacheContexts(array $cache_contexts)

{@inheritdoc}

addCacheTags(array $cache_tags)

{@inheritdoc}

$this
setCacheTags(array $cache_tags)

Sets cache tags.

$this
setCacheContexts(array $cache_contexts)

Sets cache contexts.

$this
setCacheMaxAge(int $max_age)

Sets the maximum age (in seconds).

merge(CacheableMetadata $other)

Merges the values of another CacheableMetadata object with this one.

applyTo(array $build)

Applies the values of this CacheableMetadata object to a render array.

createFromRenderArray(array $build)

Creates a CacheableMetadata object with values taken from a render array.

createFromObject(CacheableDependencyInterface|mixed $object)

Creates a CacheableMetadata object from a depended object.

__construct(array $keys)

Constructs a ContextCacheKeys object.

string[]
getKeys()

Gets the generated cache keys.

Details

protected $this setCacheability(CacheableDependencyInterface $cacheability)

Sets cacheability; useful for value object constructors.

Parameters

CacheableDependencyInterface $cacheability

The cacheability to set.

Return Value

$this

getCacheTags()

{@inheritdoc}

getCacheContexts()

{@inheritdoc}

getCacheMaxAge()

{@inheritdoc}

addCacheableDependency($other_object)

{@inheritdoc}

Parameters

$other_object

addCacheContexts(array $cache_contexts)

{@inheritdoc}

Parameters

array $cache_contexts

addCacheTags(array $cache_tags)

{@inheritdoc}

Parameters

array $cache_tags

mergeCacheMaxAge($max_age)

{@inheritdoc}

Parameters

$max_age

$this setCacheTags(array $cache_tags)

Sets cache tags.

Parameters

array $cache_tags

The cache tags to be associated.

Return Value

$this

$this setCacheContexts(array $cache_contexts)

Sets cache contexts.

Parameters

array $cache_contexts

The cache contexts to be associated.

Return Value

$this

$this setCacheMaxAge(int $max_age)

Sets the maximum age (in seconds).

Defaults to Cache::PERMANENT

Parameters

int $max_age

The max age to associate.

Return Value

$this

Exceptions

InvalidArgumentException

CacheableMetadata merge(CacheableMetadata $other)

Merges the values of another CacheableMetadata object with this one.

Parameters

CacheableMetadata $other

The other CacheableMetadata object.

Return Value

CacheableMetadata

A new CacheableMetadata object, with the merged data.

applyTo(array $build)

Applies the values of this CacheableMetadata object to a render array.

Parameters

array $build

A render array.

static CacheableMetadata createFromRenderArray(array $build)

Creates a CacheableMetadata object with values taken from a render array.

Parameters

array $build

A render array.

Return Value

CacheableMetadata

static CacheableMetadata createFromObject(CacheableDependencyInterface|mixed $object)

Creates a CacheableMetadata object from a depended object.

Parameters

CacheableDependencyInterface|mixed $object

The object whose cacheability metadata to retrieve. If it implements CacheableDependencyInterface, 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

CacheableMetadata

__construct(array $keys)

Constructs a ContextCacheKeys object.

Parameters

array $keys

The cache context keys.

string[] getKeys()

Gets the generated cache keys.

Return Value

string[]

The cache keys.