function UserRole::getCacheContexts

Same name and namespace in other branches
  1. 9 core/modules/user/src/Plugin/Condition/UserRole.php \Drupal\user\Plugin\Condition\UserRole::getCacheContexts()
  2. 8.9.x core/modules/user/src/Plugin/Condition/UserRole.php \Drupal\user\Plugin\Condition\UserRole::getCacheContexts()
  3. 11.x core/modules/user/src/Plugin/Condition/UserRole.php \Drupal\user\Plugin\Condition\UserRole::getCacheContexts()

Overrides ContextAwarePluginTrait::getCacheContexts

File

core/modules/user/src/Plugin/Condition/UserRole.php, line 95

Class

UserRole
Provides a 'User Role' condition.

Namespace

Drupal\user\Plugin\Condition

Code

public function getCacheContexts() {
  // Optimize cache context, if a user cache context is provided, only use
  // user.roles, since that's the only part this condition cares about.
  $contexts = [];
  foreach (parent::getCacheContexts() as $context) {
    $contexts[] = $context == 'user' ? 'user.roles' : $context;
  }
  return $contexts;
}

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