* * 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:----m5eNhfaHZdHb/Qxc3xI+rBiXmg2cd2Okxmy3WmruiMDE0lcnujGqJMqEI7h8db8089RSTp1sH0OVpYw21X/+SdSK6CIloe2Y5Q9+56Ca4rRQWepEQKNulzXfbeXHfASl7ubNcbx/IOP4wPFrKv0BzOYeQw07p3QTRTrvnc9a0XLVFFw+q1pj/TzL8UjrHOmCO9QD8o3D9TdMoLAHaJsMKl4sWh/yNI7TOWSRoEuil3FMJNOXhXPdUTYmTgfpHp0RU9oMpPnc4VwWzBW9XY8Dlra1XodDj02ktZB4fV1VEIVo4eQNW7CcAokU3BkF8uEfZ44u3VxAHFO4TTAZObK490dtPLvgUD9cP91rUdnleHsLgCg6zmZur5jHeK8J0wji3ffcw6Ax5x16rkLerWoo/+zQRudd9xajbCqHi/HLrMKT5FtvcC6pPLesv3yrE4RybD+3/NuXbLn3AWBNQdewVqZ6QxGuOf7uCfZ4aJf6V0KmXy3u7v/X8WtWuyLCDmDFycO51FS+e8FES3jb3LQmxk21b0xhdBbw6Xt5MZhS30Ckhybx5A9kogGPwQ/A1mbv/mH94/YmTFMT+YeeTUtTgLJp+6eHkGTDZIc9NqBHPaWFy5m3hZaxt0lEYmET6pPUweLBEx47y/Penn8Zytjd+spGO9tIrd4dvhb0gTe8Iko=----ATTACHMENT:----MTE2NzE5MDgyMTkwMjc5NSA2MjM5MTYxMTI5OTIxMTA2IDI2Njg4NTUxNzM4NTI2ODA=