Class SimpleCacheEngine
Wrapper for Cake engines that allow them to support the PSR16 Simple Cache Interface
Property Summary
-
$innerEngine protected
Cake\Cache\CacheEngine
The wrapped cache engine object.
Method Summary
-
__construct() public
Constructor
-
add() public
Write data for key into a cache engine if it doesn't exist already.
-
clear() public
Wipes clean the entire cache's keys.
-
clearGroup() public
Clear all values belonging to the named group.
-
decrement() public
Decrement a number under the key and return decremented value
-
delete() public
Delete an item from the cache by its unique key.
-
deleteMultiple() public
Deletes multiple cache items in a single operation.
-
ensureValidKey() protected
Ensure the validity of the given cache key.
-
ensureValidKeys() protected
Ensure the validity of the given cache keys.
-
get() public
Fetches the value for a given key from the cache.
-
getMultiple() public
Obtains multiple cache items by their unique keys.
-
has() public
Determines whether an item is present in the cache.
-
increment() public
Increment a number under the key and return incremented value
-
set() public
Persists data in the cache, uniquely referenced by the given key with an optional expiration TTL time.
-
setMultiple() public
Persists a set of key => value pairs in the cache, with an optional TTL.
Method Detail
__construct() ¶ public
__construct(Cake\Cache\CacheEngine $innerEngine)
Constructor
Parameters
-
Cake\Cache\CacheEngine
$innerEngine The decorated engine.
add() ¶ public
add(string $key, mixed $value): bool
Write data for key into a cache engine if it doesn't exist already.
Parameters
-
string
$key -
mixed
$value
Returns
bool
clearGroup() ¶ public
clearGroup(string $group): bool
Clear all values belonging to the named group.
Each implementation needs to decide whether actually delete the keys or just augment a group generation value to achieve the same result.
Parameters
-
string
$group
Returns
bool
decrement() ¶ public
decrement(string $key, int $offset = 1): int|false
Decrement a number under the key and return decremented value
Parameters
-
string
$key -
int
$offset optional
Returns
int|false
delete() ¶ public
delete(string $key): bool
Delete an item from the cache by its unique key.
Parameters
-
string
$key The unique cache key of the item to delete.
Returns
bool
Throws
Cake\Cache\InvalidArgumentException
If the $key string is not a legal value.
deleteMultiple() ¶ public
deleteMultiple(iterable $keys): bool
Deletes multiple cache items in a single operation.
Parameters
-
iterable
$keys A list of string-based keys to be deleted.
Returns
bool
Throws
Cake\Cache\InvalidArgumentException
If $keys is neither an array nor a Traversable, or if any of the $keys are not a legal value.
ensureValidKey() ¶ protected
ensureValidKey(string $key): void
Ensure the validity of the given cache key.
Parameters
-
string
$key Key to check.
Returns
void
Throws
Cake\Cache\InvalidArgumentException
When the key is not valid.
ensureValidKeys() ¶ protected
ensureValidKeys(mixed $keys): void
Ensure the validity of the given cache keys.
Parameters
-
mixed
$keys The keys to check.
Returns
void
Throws
Cake\Cache\InvalidArgumentException
When the keys are not valid.
get() ¶ public
get(string $key, mixed $default = null): mixed
Fetches the value for a given key from the cache.
Parameters
-
string
$key The unique key of this item in the cache.
-
mixed
$default optional Default value to return if the key does not exist.
Returns
mixed
Throws
Cake\Cache\InvalidArgumentException
If the $key string is not a legal value.
getMultiple() ¶ public
getMultiple(iterable $keys, mixed $default = null): iterable
Obtains multiple cache items by their unique keys.
Parameters
-
iterable
$keys A list of keys that can obtained in a single operation.
-
mixed
$default optional Default value to return for keys that do not exist.
Returns
iterable
Throws
Cake\Cache\InvalidArgumentException
If $keys is neither an array nor a Traversable, or if any of the $keys are not a legal value.
has() ¶ public
has(string $key): bool
Determines whether an item is present in the cache.
NOTE: It is recommended that has() is only to be used for cache warming type purposes and not to be used within your live applications operations for get/set, as this method is subject to a race condition where your has() will return true and immediately after, another script can remove it making the state of your app out of date.
Parameters
-
string
$key The cache item key.
Returns
bool
Throws
Cake\Cache\InvalidArgumentException
If the $key string is not a legal value.
increment() ¶ public
increment(string $key, int $offset = 1): int|false
Increment a number under the key and return incremented value
Parameters
-
string
$key -
int
$offset optional
Returns
int|false
set() ¶ public
set(string $key, mixed $value, null|intDateInterval $ttl = null): bool
Persists data in the cache, uniquely referenced by the given key with an optional expiration TTL time.
Parameters
-
string
$key The key of the item to store.
-
mixed
$value The value of the item to store, must be serializable.
-
null|intDateInterval
$ttl optional Optional. The TTL value of this item. If no value is sent and the driver supports TTL then the library may set a default value for it or let the driver take care of that.
Returns
bool
Throws
Cake\Cache\InvalidArgumentException
setMultiple() ¶ public
setMultiple(iterable $values, null|intDateInterval $ttl = null): bool
Persists a set of key => value pairs in the cache, with an optional TTL.
Parameters
-
iterable
$values A list of key => value pairs for a multiple-set operation.
-
null|intDateInterval
$ttl optional Optional. The TTL value of this item. If no value is sent and the driver supports TTL then the library may set a default value for it or let the driver take care of that.
Returns
bool
Throws
Cake\Cache\InvalidArgumentException
If $values is neither an array nor a Traversable, or if any of the $values are not a legal value.