You are here

public function ArgumentPluginBase::getCacheMaxAge in Drupal 8

Same name and namespace in other branches
  1. 9 core/modules/views/src/Plugin/views/argument/ArgumentPluginBase.php \Drupal\views\Plugin\views\argument\ArgumentPluginBase::getCacheMaxAge()

The maximum age for which this object may be cached.

Return value

int The maximum time in seconds that this object may be cached.

Overrides CacheableDependencyInterface::getCacheMaxAge

File

core/modules/views/src/Plugin/views/argument/ArgumentPluginBase.php, line 1258

Class

ArgumentPluginBase
Base class for argument (contextual filter) handler plugins.

Namespace

Drupal\views\Plugin\views\argument

Code

public function getCacheMaxAge() {
  $max_age = Cache::PERMANENT;

  // Asks all subplugins (argument defaults, argument validator and styles).
  if (($plugin = $this
    ->getPlugin('argument_default')) && $plugin instanceof CacheableDependencyInterface) {
    $max_age = Cache::mergeMaxAges($max_age, $plugin
      ->getCacheMaxAge());
  }
  if (($plugin = $this
    ->getPlugin('argument_validator')) && $plugin instanceof CacheableDependencyInterface) {
    $max_age = Cache::mergeMaxAges($max_age, $plugin
      ->getCacheMaxAge());
  }

  // Summaries use style plugins.
  if (($plugin = $this
    ->getPlugin('style')) && $plugin instanceof CacheableDependencyInterface) {
    $max_age = Cache::mergeMaxAges($max_age, $plugin
      ->getCacheMaxAge());
  }
  return $max_age;
}