Submit
Path:
~
/
/
proc
/
self
/
root
/
opt
/
psa
/
admin
/
plib
/
modules
/
rest-api
/
vendor
/
jms
/
metadata
/
src
/
Cache
/
File Content:
DoctrineCacheAdapter.php
<?php declare (strict_types=1); namespace PleskRestApi\Metadata\Cache; use PleskRestApi\Doctrine\Common\Cache\Cache; use PleskRestApi\Metadata\ClassMetadata; /** * @author Henrik Bjornskov <henrik@bjrnskov.dk> */ class DoctrineCacheAdapter implements CacheInterface, ClearableCacheInterface { /** * @var string */ private $prefix; /** * @var Cache */ private $cache; public function __construct(string $prefix, Cache $cache) { $this->prefix = $prefix; $this->cache = $cache; } public function load(string $class) : ?ClassMetadata { $cache = $this->cache->fetch($this->prefix . $class); return \false === $cache ? null : $cache; } public function put(ClassMetadata $metadata) : void { $this->cache->save($this->prefix . $metadata->name, $metadata); } public function evict(string $class) : void { $this->cache->delete($this->prefix . $class); } public function clear() : bool { if (\method_exists($this->cache, 'deleteAll')) { // or $this->cache instanceof ClearableCache return \call_user_func([$this->cache, 'deleteAll']); } return \false; } }
Submit
FILE
FOLDER
INFO
Name
Size
Permission
Action
CacheInterface.php
531 bytes
0644
ClearableCacheInterface.php
272 bytes
0644
DoctrineCacheAdapter.php
1241 bytes
0644
FileCache.php
4068 bytes
0644
PsrCacheAdapter.php
1760 bytes
0644
N4ST4R_ID | Naxtarrr