Elgg  Version 4.x
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
Elgg\Cache\CompositeCache Class Reference

Composite cache pool. More...

Inheritance diagram for Elgg\Cache\CompositeCache:
ElggCache

Public Member Functions

 __construct ($namespace, Config $config, $flags, bool $validate_lastcache=true)
 Constructor. More...
 
 save ($key, $data, $ttl=null)
 Save data in a cache. More...
 
 load ($key)
 Load data from the cache using a given key. More...
 
 delete ($key)
 
 clear ()
 
 invalidate ()
 
 purge ()
 
 setNamespace ($namespace= 'default')
 Set the namespace of this cache. More...
 
 getNamespace ()
 Get the namespace currently defined. More...
 
- Public Member Functions inherited from ElggCache
 __construct ()
 Set the constructor. More...
 
 setVariable (string $variable, $value)
 Set a cache variable. More...
 
 getVariable (string $variable)
 Get variables for this cache. More...
 
 __get (string $key)
 Class member get overloading, returning key using $this->load defaults. More...
 
 __set (string $key, $value)
 Class member set overloading, setting a key using $this->save defaults. More...
 
 __isset (string $key)
 Supporting isset, using $this->load() with default values. More...
 
 __unset (string $key)
 Supporting unsetting of magic attributes. More...
 
 save ($key, $data, $expire_after=null)
 Save data in a cache. More...
 
 load ($key)
 Load data from the cache using a given key. More...
 
 delete ($key)
 Invalidate a key. More...
 
 clear ()
 Clear out all the contents of the cache. More...
 
 invalidate ()
 Invalidate the contents of the cache. More...
 
 purge ()
 Purge old/stale contents of the cache. More...
 
 disable ()
 Disable cache Do not write or read from cache. More...
 
 enable ()
 Enable disabled cache. More...
 
 populate (array $values, int $expires_after=null)
 Populate cache from an array of key => values. More...
 
 add (string $key, $data)
 Add a key only if it doesn't already exist. More...
 
 offsetSet ($key, $value)
 Assigns a value for the specified key. More...
 
 offsetGet ($key)
 Get the value for specified key. More...
 
 offsetUnset ($key)
 Unsets a key. More...
 
 offsetExists ($key)
 Does key exist. More...
 

Static Public Member Functions

static isMemcacheAvailable ()
 Helper function to check if memcache is available. More...
 
static isRedisAvailable ()
 Helper function to check if Redis is available. More...
 

Protected Member Functions

 prefixInstanceId (string $id)
 Prefixes instance ids with namespace. More...
 
 sanitizeItemKey ($key)
 Sanitizes item key for cache. More...
 
 createPool ()
 Create a new cluster/pool of drivers. More...
 
 buildApcDriver ()
 Builds APC driver. More...
 
 buildRedisDriver ()
 Builds Redis driver. More...
 
 buildMemcachedDriver ()
 Builds Memcached driver. More...
 
 buildFileSystemDriver ()
 Builds file system driver. More...
 
 buildLocalFileSystemDriver ()
 Builds local file system driver. More...
 
 buildEphemeralDriver ()
 Builds in-memory driver. More...
 
 buildBlackHoleDriver ()
 Builds null cache driver. More...
 

Protected Attributes

 $ttl = 86400
 TTL of saved items (default timeout after a day to prevent anything getting too stale) More...
 
 $config
 
 $flags
 
 $pool
 
 $namespace
 
 $validate_lastcache
 
- Protected Attributes inherited from ElggCache
 $disabled = false
 

Detailed Description

Composite cache pool.

Definition at line 20 of file CompositeCache.php.

Constructor & Destructor Documentation

Elgg\Cache\CompositeCache::__construct (   $namespace,
Config  $config,
  $flags,
bool  $validate_lastcache = true 
)

Constructor.

Parameters
string$namespaceCache namespace
Config$configElgg config
int$flagsStart flags
bool$validate_lastcacheDuring load validate ElggConfig::lastcache

Definition at line 60 of file CompositeCache.php.

Member Function Documentation

Elgg\Cache\CompositeCache::buildApcDriver ( )
protected

Builds APC driver.

Returns
null

Definition at line 273 of file CompositeCache.php.

Elgg\Cache\CompositeCache::buildBlackHoleDriver ( )
protected

Builds null cache driver.

Returns
null|ExtendedCacheItemPoolInterface

Definition at line 410 of file CompositeCache.php.

Elgg\Cache\CompositeCache::buildEphemeralDriver ( )
protected

Builds in-memory driver.

Returns
null|ExtendedCacheItemPoolInterface

Definition at line 393 of file CompositeCache.php.

Elgg\Cache\CompositeCache::buildFileSystemDriver ( )
protected

Builds file system driver.

Returns
null|ExtendedCacheItemPoolInterface

Definition at line 343 of file CompositeCache.php.

Elgg\Cache\CompositeCache::buildLocalFileSystemDriver ( )
protected

Builds local file system driver.

Returns
null|ExtendedCacheItemPoolInterface

Definition at line 368 of file CompositeCache.php.

Elgg\Cache\CompositeCache::buildMemcachedDriver ( )
protected

Builds Memcached driver.

Returns
null|ExtendedCacheItemPoolInterface

Definition at line 312 of file CompositeCache.php.

Elgg\Cache\CompositeCache::buildRedisDriver ( )
protected

Builds Redis driver.

Returns
null|ExtendedCacheItemPoolInterface

Definition at line 291 of file CompositeCache.php.

Elgg\Cache\CompositeCache::clear ( )

See also
ElggCache::clear()

Definition at line 143 of file CompositeCache.php.

Elgg\Cache\CompositeCache::createPool ( )
protected

Create a new cluster/pool of drivers.

Returns
ExtendedCacheItemPoolInterface
Exceptions
ConfigurationException

Definition at line 226 of file CompositeCache.php.

Elgg\Cache\CompositeCache::delete (   $key)

See also
ElggCache::delete()

Definition at line 131 of file CompositeCache.php.

Elgg\Cache\CompositeCache::getNamespace ( )

Get the namespace currently defined.

Returns
string

Definition at line 184 of file CompositeCache.php.

Elgg\Cache\CompositeCache::invalidate ( )

See also
ElggCache::invalidate()

Definition at line 151 of file CompositeCache.php.

static Elgg\Cache\CompositeCache::isMemcacheAvailable ( )
static

Helper function to check if memcache is available.

Returns
bool
Since
4.2

Definition at line 427 of file CompositeCache.php.

static Elgg\Cache\CompositeCache::isRedisAvailable ( )
static

Helper function to check if Redis is available.

Returns
bool
Since
4.2

Definition at line 438 of file CompositeCache.php.

Elgg\Cache\CompositeCache::load (   $key)

Load data from the cache using a given key.

Parameters
string$keyName
Returns
mixed The stored data or false.

Definition at line 105 of file CompositeCache.php.

Elgg\Cache\CompositeCache::prefixInstanceId ( string  $id)
protected

Prefixes instance ids with namespace.

Parameters
string$idinstance id
Returns
string
Since
4.2

Definition at line 197 of file CompositeCache.php.

Elgg\Cache\CompositeCache::purge ( )

See also
ElggCache::purge()

Definition at line 161 of file CompositeCache.php.

Elgg\Cache\CompositeCache::sanitizeItemKey (   $key)
protected

Sanitizes item key for cache.

Parameters
mixed$keyinput key
Returns
string
Exceptions
InvalidArgumentException
Since
4.2

Definition at line 212 of file CompositeCache.php.

Elgg\Cache\CompositeCache::save (   $key,
  $data,
  $ttl = null 
)

Save data in a cache.

Parameters
string$keyName
mixed$dataValue
int | DateTime$ttlExpire value after
Returns
bool

Definition at line 79 of file CompositeCache.php.

Elgg\Cache\CompositeCache::setNamespace (   $namespace = 'default')

Set the namespace of this cache.

This is useful for cache types (like memcache or static variables) where there is one large flat area of memory shared across all instances of the cache.

Parameters
string$namespaceNamespace for cache
Returns
void

Definition at line 175 of file CompositeCache.php.

Member Data Documentation

Elgg\Cache\CompositeCache::$config
protected

Definition at line 30 of file CompositeCache.php.

Elgg\Cache\CompositeCache::$flags
protected

Definition at line 35 of file CompositeCache.php.

Elgg\Cache\CompositeCache::$namespace
protected

Definition at line 45 of file CompositeCache.php.

Elgg\Cache\CompositeCache::$pool
protected

Definition at line 40 of file CompositeCache.php.

Elgg\Cache\CompositeCache::$ttl = 86400
protected

TTL of saved items (default timeout after a day to prevent anything getting too stale)

Definition at line 25 of file CompositeCache.php.

Elgg\Cache\CompositeCache::$validate_lastcache
protected

Definition at line 50 of file CompositeCache.php.


The documentation for this class was generated from the following file: