function ArgumentPluginBase::getCacheMaxAge

Same name and namespace in other branches
  1. 8.9.x core/modules/views/src/Plugin/views/argument/ArgumentPluginBase.php \Drupal\views\Plugin\views\argument\ArgumentPluginBase::getCacheMaxAge()
  2. 10 core/modules/views/src/Plugin/views/argument/ArgumentPluginBase.php \Drupal\views\Plugin\views\argument\ArgumentPluginBase::getCacheMaxAge()
  3. 11.x 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. An object may be cached permanently by returning \Drupal\Core\Cache\Cache::PERMANENT.

Overrides CacheableDependencyInterface::getCacheMaxAge

File

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

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;
}

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