40 lines
975 B
PHP
40 lines
975 B
PHP
<?php
|
|
|
|
namespace WP_Ultimo\Dependencies\Amp\Cache;
|
|
|
|
use WP_Ultimo\Dependencies\Amp\Promise;
|
|
final class PrefixCache implements Cache
|
|
{
|
|
private $cache;
|
|
private $keyPrefix;
|
|
public function __construct(Cache $cache, string $keyPrefix)
|
|
{
|
|
$this->cache = $cache;
|
|
$this->keyPrefix = $keyPrefix;
|
|
}
|
|
/**
|
|
* Gets the specified key prefix.
|
|
*
|
|
* @return string
|
|
*/
|
|
public function getKeyPrefix() : string
|
|
{
|
|
return $this->keyPrefix;
|
|
}
|
|
/** @inheritdoc */
|
|
public function get(string $key) : Promise
|
|
{
|
|
return $this->cache->get($this->keyPrefix . $key);
|
|
}
|
|
/** @inheritdoc */
|
|
public function set(string $key, string $value, int $ttl = null) : Promise
|
|
{
|
|
return $this->cache->set($this->keyPrefix . $key, $value, $ttl);
|
|
}
|
|
/** @inheritdoc */
|
|
public function delete(string $key) : Promise
|
|
{
|
|
return $this->cache->delete($this->keyPrefix . $key);
|
|
}
|
|
}
|