function QueryPluginBase::getCacheContexts

Same name in other branches
  1. 9 core/modules/views/src/Plugin/views/query/QueryPluginBase.php \Drupal\views\Plugin\views\query\QueryPluginBase::getCacheContexts()
  2. 8.9.x core/modules/views/src/Plugin/views/query/QueryPluginBase.php \Drupal\views\Plugin\views\query\QueryPluginBase::getCacheContexts()
  3. 10 core/modules/views/src/Plugin/views/query/QueryPluginBase.php \Drupal\views\Plugin\views\query\QueryPluginBase::getCacheContexts()

Overrides CacheableDependencyInterface::getCacheContexts

File

core/modules/views/src/Plugin/views/query/QueryPluginBase.php, line 348

Class

QueryPluginBase
Base plugin class for Views queries.

Namespace

Drupal\views\Plugin\views\query

Code

public function getCacheContexts() {
    $contexts = [];
    if (($views_data = Views::viewsData()->get($this->view->storage
        ->get('base_table'))) && !empty($views_data['table']['entity type'])) {
        $entity_type_id = $views_data['table']['entity type'];
        $entity_type = \Drupal::entityTypeManager()->getDefinition($entity_type_id);
        $contexts = $entity_type->getListCacheContexts();
    }
    return $contexts;
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.