Mercurial > hg > isophonics-drupal-site
view core/tests/Drupal/Tests/Core/Cache/CacheCollectorHelper.php @ 9:1fc0ff908d1f
Add another data file
author | Chris Cannam |
---|---|
date | Mon, 05 Feb 2018 12:34:32 +0000 |
parents | 4c8ae668cc8c |
children |
line wrap: on
line source
<?php namespace Drupal\Tests\Core\Cache; use Drupal\Core\Cache\CacheCollector; /** * Helper class to test the cache collector. */ class CacheCollectorHelper extends CacheCollector { /** * Contains data to return on a cache miss. * @var array */ protected $cacheMissData = []; /** * Number of calls to \Drupal\Core\Cache\CacheCollector::resolveCacheMiss(). * * @var int */ protected $cacheMisses = 0; /** * {@inheritdoc} */ public function set($key, $value) { parent::set($key, $value); $this->persist($key); } /** * {@inheritdoc} */ public function resolveCacheMiss($key) { $this->cacheMisses++; if (isset($this->cacheMissData[$key])) { $this->storage[$key] = $this->cacheMissData[$key]; $this->persist($key); return $this->cacheMissData[$key]; } } /** * Sets data to return from a cache miss resolve. * * @param string $key * The key being looked for. * @param mixed $value * The value to return. */ public function setCacheMissData($key, $value) { $this->cacheMissData[$key] = $value; } /** * Returns the number of cache misses. * * @return int * Number of calls to the resolve cache miss method. */ public function getCacheMisses() { return $this->cacheMisses; } }