You are here

public function SocialGroupRequestMembershipNotification::getCacheContexts in Open Social 8.9

Same name and namespace in other branches
  1. 10.3.x modules/social_features/social_group/modules/social_group_request/src/Plugin/Block/SocialGroupRequestMembershipNotification.php \Drupal\social_group_request\Plugin\Block\SocialGroupRequestMembershipNotification::getCacheContexts()
  2. 10.0.x modules/social_features/social_group/modules/social_group_request/src/Plugin/Block/SocialGroupRequestMembershipNotification.php \Drupal\social_group_request\Plugin\Block\SocialGroupRequestMembershipNotification::getCacheContexts()
  3. 10.1.x modules/social_features/social_group/modules/social_group_request/src/Plugin/Block/SocialGroupRequestMembershipNotification.php \Drupal\social_group_request\Plugin\Block\SocialGroupRequestMembershipNotification::getCacheContexts()
  4. 10.2.x modules/social_features/social_group/modules/social_group_request/src/Plugin/Block/SocialGroupRequestMembershipNotification.php \Drupal\social_group_request\Plugin\Block\SocialGroupRequestMembershipNotification::getCacheContexts()

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 ContextAwarePluginBase::getCacheContexts

See also

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

File

modules/social_features/social_group/modules/social_group_request/src/Plugin/Block/SocialGroupRequestMembershipNotification.php, line 173

Class

SocialGroupRequestMembershipNotification
Provides a 'Membership requests notification' block.

Namespace

Drupal\social_group_request\Plugin\Block

Code

public function getCacheContexts() {
  $contexts = parent::getCacheContexts();

  // Ensure the context keeps track of the URL
  // so we don't see the message on every group.
  $contexts = Cache::mergeContexts($contexts, [
    'url',
    'user.permissions',
    'group',
  ]);
  return $contexts;
}