You are here

public function EntityExtraField::getCacheContexts in Entity Extra Field 2.0.x

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 value

string[] An array of cache context tokens, used to generate a cache ID.

Overrides EntityBase::getCacheContexts

See also

\Drupal\Core\Cache\Context\CacheContextsManager::convertTokensToKeys()

File

src/Entity/EntityExtraField.php, line 344

Class

EntityExtraField
Define entity extra field.

Namespace

Drupal\entity_extra_field\Entity

Code

public function getCacheContexts() : array {
  $contexts = parent::getCacheContexts();
  foreach ($this
    ->getActiveFieldTypeConditions() as $plugin_id => $configuration) {

    /** @var \Drupal\Core\Condition\ConditionPluginBase $condition */
    $condition = $this
      ->conditionPluginManager()
      ->createInstance($plugin_id, $configuration);
    $contexts = Cache::mergeContexts($contexts, $condition
      ->getCacheContexts());
  }
  return $contexts;
}