Spaces:
Sleeping
Sleeping
processmaker-community / processmaker-files /vendor /symfony /http-kernel /CacheClearer /Psr6CacheClearer.php
| /* | |
| * This file is part of the Symfony package. | |
| * | |
| * (c) Fabien Potencier <fabien@symfony.com> | |
| * | |
| * For the full copyright and license information, please view the LICENSE | |
| * file that was distributed with this source code. | |
| */ | |
| namespace Symfony\Component\HttpKernel\CacheClearer; | |
| use Psr\Cache\CacheItemPoolInterface; | |
| /** | |
| * @author Nicolas Grekas <p@tchwork.com> | |
| */ | |
| class Psr6CacheClearer implements CacheClearerInterface | |
| { | |
| private $pools = array(); | |
| public function __construct(array $pools = array()) | |
| { | |
| $this->pools = $pools; | |
| } | |
| public function addPool(CacheItemPoolInterface $pool) | |
| { | |
| @trigger_error(sprintf('The %s() method is deprecated since version 3.3 and will be removed in 4.0. Pass an array of pools indexed by name to the constructor instead.', __METHOD__), E_USER_DEPRECATED); | |
| $this->pools[] = $pool; | |
| } | |
| public function hasPool($name) | |
| { | |
| return isset($this->pools[$name]); | |
| } | |
| public function clearPool($name) | |
| { | |
| if (!isset($this->pools[$name])) { | |
| throw new \InvalidArgumentException(sprintf('Cache pool not found: %s.', $name)); | |
| } | |
| return $this->pools[$name]->clear(); | |
| } | |
| /** | |
| * {@inheritdoc} | |
| */ | |
| public function clear($cacheDir) | |
| { | |
| foreach ($this->pools as $pool) { | |
| $pool->clear(); | |
| } | |
| } | |
| } | |