class Cache implements FlushableInterface (View source)

Base class for the three caching layers present in Concrete5: - ExpensiveCache - ObjectCache - RequestCache

Cache storage is performed using the Stash Library, see http://www.stashphp.com/

This class imports the various caching settings from Config class, sets up the Stash pools and provides a basic caching API for all of Concrete5.

Properties

Pool $pool
protected bool $enabled
protected DriverInterface $driver

Methods

__construct()

No description

init()

Initializes the cache by setting up the cache pool and enabling the cache.

DriverInterface
loadConfig($level)

Loads the composite driver from constants.

null|DriverInterface
buildDriver(array $driverConfig)

Function used to build a driver from a driverConfig array.

bool
delete(string $key)

Deletes an item from the cache.

bool
exists(string $key)

Checks if an item exists in the cache.

flush()

Removes all values from the cache.

ItemInterface
getItem(string $key)

Gets a value from the cache.

save(CacheItemInterface $item)

No description

enable()

Enables the cache.

disable()

Disables the cache.

bool
isEnabled()

Returns true if the cache is enabled, false if not.

static 
disableAll()

Disables all cache levels.

static 
enableAll()

Enables all cache levels.

Details

__construct()

abstract protected init()

Initializes the cache by setting up the cache pool and enabling the cache.

protected DriverInterface loadConfig($level)

Loads the composite driver from constants.

Parameters

$level

Return Value

DriverInterface

private null|DriverInterface buildDriver(array $driverConfig)

Function used to build a driver from a driverConfig array.

Parameters

array $driverConfig The config item belonging to the driver

Return Value

null|DriverInterface

bool delete(string $key)

Deletes an item from the cache.

Parameters

string $key Name of the cache item ID

Return Value

bool True if deleted, false if not

bool exists(string $key)

Checks if an item exists in the cache.

Parameters

string $key Name of the cache item ID

Return Value

bool True if exists, false if not

flush()

Removes all values from the cache.

ItemInterface getItem(string $key)

Gets a value from the cache.

Parameters

string $key Name of the cache item ID

Return Value

ItemInterface

save(CacheItemInterface $item)

Parameters

CacheItemInterface $item

enable()

Enables the cache.

disable()

Disables the cache.

bool isEnabled()

Returns true if the cache is enabled, false if not.

Return Value

bool

static disableAll()

Disables all cache levels.

static enableAll()

Enables all cache levels.