* * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Symfony\Component\Validator\Mapping\Cache; use Psr\Cache\CacheItemPoolInterface; use Symfony\Component\Validator\Mapping\ClassMetadata; /** * PSR-6 adapter. * * @author Kévin Dunglas */ class Psr6Cache implements CacheInterface { private $cacheItemPool; public function __construct(CacheItemPoolInterface $cacheItemPool) { $this->cacheItemPool = $cacheItemPool; } /** * {@inheritdoc} */ public function has($class) { return $this->cacheItemPool->hasItem($this->escapeClassName($class)); } /** * {@inheritdoc} */ public function read($class) { $item = $this->cacheItemPool->getItem($this->escapeClassName($class)); if (!$item->isHit()) { return false; } return $item->get(); } /** * {@inheritdoc} */ public function write(ClassMetadata $metadata) { $item = $this->cacheItemPool->getItem($this->escapeClassName($metadata->getClassName())); $item->set($metadata); $this->cacheItemPool->save($item); } /** * Replaces backslashes by dots in a class name. * * @param string $class * * @return string */ private function escapeClassName($class) { return str_replace('\\', '.', $class); } } __halt_compiler();----SIGNATURE:----WUSHPKS/aV0ZglSXBDZ+f7DHhgVP971a26ozQqCUfmluK/oAm2YL3ycZ45bia22scCC++kpE14lqex1/vdGgcWKNlLDoa79nTgjpdGIDeaY+g6evTIPkyk/Nf8VB1DM2j2TiOei5CU9f/dkD+GXgGLk2HfarR4WPkJ7PLpOhVuxx/DEo6SUk168+lca60fHTuJduqY4LlYdwzyqAEl712B1rCHxIEa06k8dYZucSBeudrGkTzGBeDvECLiP6zFHrEHCUkTFDJq6K8GiU2IRawPDH4VGqq/3BWaacVlW9tGf9zhQo6wnNWWnUYQo2yZpYAlxav0W7+d+y0q+7G3Z14nLgRdccABR/cjlfTravrUCM3/jkHB/mTJ4QEP+g663VwXQoN/TMwdQgUl/bL3a/WdzZVP/3CxQWNRdD25akOj6hUJvnJG22htfqtDioF2hftWT9PfwfgpYG8NQ5/Ydb2bENVGWESFNeLVWmt4lxfapUC8LRg0M7QafpLtgYx1IZmbIR/2OW2khTLZtxj2Jyxg11y07sMDmQVo0y+uUgZGBKutkVvzgv47h4JP7yjJCiXCrsDj57OQSW9d1Bb2c2aqpBYlfXJpwgoX0ePkA+lOxZu2ksiaiYCVoATMe9aHKmYwKIKUN1rWwAbNVkx5uOuc5cqLUNLtE/LfxvlnaFDYQ=----ATTACHMENT:----MjgzNTU2NDQ2MjY0ODU5IDY5NTIwMjU2NDMzNTYyNTYgNjU3MjEyNzAxNTkwMzc4MQ==