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. 10 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.