class BookNavigationCacheContext implements CacheContextInterface, ContainerAwareInterface (View source)

Defines the book navigation cache context service.

Cache context ID: 'route.book_navigation'.

This allows for book navigation location-aware caching. It depends on:

  • whether the current route represents a book node at all
  • and if so, where in the book hierarchy we are

This class is container-aware to avoid initializing the 'book.manager' service when it is not necessary.

Traits

ContainerAwareTrait

Provides a standard way to announce deprecated properties.

Properties

protected RouteMatchInterface $routeMatch

The current route match.

protected $deprecatedProperties {@inheritdoc}

Methods

__get($name)

Allows to access deprecated/removed properties.

__construct(RouteMatchInterface $route_match)

Constructs a new BookNavigationCacheContext service.

static string
getLabel()

Returns the label of the cache context.

string
getContext()

Returns the string representation of the cache context.

getCacheableMetadata()

Gets the cacheability metadata for the context.

Details

__get($name)

Allows to access deprecated/removed properties.

This method must be public.

Parameters

$name

__construct(RouteMatchInterface $route_match)

Constructs a new BookNavigationCacheContext service.

Parameters

RouteMatchInterface $route_match

The current route match.

static string getLabel()

Returns the label of the cache context.

Return Value

string

The label of the cache context.

string getContext()

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 Value

string

The string representation of the cache context.

CacheableMetadata getCacheableMetadata()

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 Value

CacheableMetadata

A cacheable metadata object.