Zeta Components Manual :: Docs For Class ezcCacheStorageMemcache
Cache::ezcCacheStorageMemcache
Class ezcCacheStorageMemcache
This class is a common base class for all Memcache based storage classes.
To implement a Memcache based cache storage, you simply have to derive from this class and implement the ezcCacheStorageMemcache::fetchData() and ezcCacheStorageMemcache::prepareData() methods.
For example code of using a cache storage, see ezcCacheManager.
The Cache package already contains an implementation this class:
Options for this class are defined in ezcCacheStorageMemcacheOptions.Source for this file: /Cache/src/storage/memcache.php
ezcCacheStorage | --ezcCacheStorageMemory | --ezcCacheStorageMemcache
Version: | //autogentag// |
Descendants
Child Class | Description |
---|---|
ezcCacheStorageMemcachePlain | This storage implementation stores data in a Memcache cache. |
Constants
BACKEND_NAME
= "Memcache"
|
The backend name. |
REGISTRY_NAME
= 'ezcCacheStorageMemcache_Registry'
|
The registry name. |
Inherited Member Variables
From ezcCacheStorageMemory | |
---|---|
protected |
ezcCacheStorageMemory::$backend
|
protected |
ezcCacheStorageMemory::$backendName
|
protected |
ezcCacheStorageMemory::$registry
|
protected |
ezcCacheStorageMemory::$registryName
|
protected |
ezcCacheStorageMemory::$searchRegistry
|
From ezcCacheStorage | |
protected |
ezcCacheStorage::$properties
|
Method Summary
public ezcCacheStorageMemcache |
__construct(
[ $location
= null] , [ $options
= array()] )
Creates a new cache storage in the given location. |
protected abstract mixed |
fetchData(
$identifier
)
Fetches the data from the cache. |
protected abstract mixed |
prepareData(
$data
)
Prepare the data for storing. |
public void |
setOptions(
$options
)
Set new options. |
Inherited Methods
From ezcCacheStorageMemory | |
---|---|
public ezcCacheStorageMemory |
ezcCacheStorageMemory::__construct()
Creates a new cache storage in the given location. |
protected int |
ezcCacheStorageMemory::calcLifetime()
Calculates the lifetime remaining for a cache object. |
public int |
ezcCacheStorageMemory::countDataItems()
Returns the number of items in the cache matching a certain criteria. |
public void |
ezcCacheStorageMemory::delete()
Deletes the data associated with $id or $attributes from the cache. |
protected void |
ezcCacheStorageMemory::fetchSearchRegistry()
Fetches the search registry from the backend or creates it if empty. |
protected string |
ezcCacheStorageMemory::generateAttrStr()
Generates a string from the $attributes array. |
public string |
ezcCacheStorageMemory::generateIdentifier()
Generates the storage internal identifier from ID and attributes. |
public int |
ezcCacheStorageMemory::getRemainingLifetime()
Returns the time in seconds which remains for a cache object, before it gets outdated. In case the cache object is already outdated or does not exists, this method returns 0. |
public void |
ezcCacheStorageMemory::lock()
Acquire a lock on the storage. |
public array(string) |
ezcCacheStorageMemory::purge()
Purge outdated data from the storage. |
protected void |
ezcCacheStorageMemory::registerIdentifier()
Registers an identifier to facilitate searching. |
public void |
ezcCacheStorageMemory::reset()
Reset the complete storage. |
public mixed |
ezcCacheStorageMemory::restore()
Restores the data from the cache. |
public ezcCacheStackMetaData |
ezcCacheStorageMemory::restoreMetaData()
Restores and returns the meta data struct. |
protected array(mixed) |
ezcCacheStorageMemory::search()
Searches the storage for data defined by ID and/or attributes. |
public string |
ezcCacheStorageMemory::store()
Stores data to the cache storage under the key $id. |
public void |
ezcCacheStorageMemory::storeMetaData()
Stores the given meta data struct. |
protected void |
ezcCacheStorageMemory::storeSearchRegistry()
Stores the search registry in the backend. |
public void |
ezcCacheStorageMemory::unlock()
Release a lock on the storage. |
protected void |
ezcCacheStorageMemory::unRegisterIdentifier()
Un-registers a previously registered identifier. |
protected void |
ezcCacheStorageMemory::validateLocation()
Checks if the location property is valid. |
From ezcCacheStorage | |
public ezcCacheStorage |
ezcCacheStorage::__construct()
Creates a new cache storage in the given location. |
public abstract int |
ezcCacheStorage::countDataItems()
Return the number of items in the cache matching a certain criteria. |
public abstract void |
ezcCacheStorage::delete()
Delete data from the cache. |
public string |
ezcCacheStorage::getLocation()
Returns the location. |
public ezcCacheStorageOptions |
ezcCacheStorage::getOptions()
Return the currently set options. |
public abstract int |
ezcCacheStorage::getRemainingLifetime()
Returns the time ( in seconds ) that remains for a cache object, before it gets outdated. In case the cache object is already outdated or does not exist, this method returns 0. |
public abstract mixed |
ezcCacheStorage::restore()
Restore data from the cache. |
public void |
ezcCacheStorage::setOptions()
Set new options. |
public abstract string |
ezcCacheStorage::store()
Store data to the cache storage. |
protected abstract void |
ezcCacheStorage::validateLocation()
Checks if the location property is valid. |
Methods
__construct
Creates a new cache storage in the given location.
Options can contain the 'ttl' ( Time-To-Life ). This is per default set to 1 day.
For details about the options see ezcCacheStorageMemcacheOptions.
Parameters:
Name | Type | Description |
---|---|---|
$location |
string | Path to the cache location |
$options |
array(string=>string) | Options for the cache |
Exceptions:
Type | Description |
---|---|
ezcBasePropertyNotFoundException |
If you tried to set a non-existent option value. |
Redefinition of:
Method | Description |
---|---|
ezcCacheStorageMemory::__construct() |
Creates a new cache storage in the given location. |
fetchData
Fetches the data from the cache.
Parameters:
Name | Type | Description |
---|---|---|
$identifier |
string | The memcache identifier to fetch data from |
Redefined in descendants as:
Method | Description |
---|---|
ezcCacheStorageMemcachePlain::fetchData() |
Fetches data from the cache. |
prepareData
Prepare the data for storing.
Parameters:
Name | Type | Description |
---|---|---|
$data |
mixed | Simple type or array |
Exceptions:
Type | Description |
---|---|
ezcCacheInvalidDataException |
If the data submitted can not be handled by this storage (object, resource). |
Redefined in descendants as:
Method | Description |
---|---|
ezcCacheStorageMemcachePlain::prepareData() |
Wraps the data in an ezcCacheStorageMemoryDataStruct structure in order to store it. |
setOptions
Set new options.
Overwrites the options with the given ones.
Parameters:
Name | Type | Description |
---|---|---|
$options |
ezcCacheStorageMemcacheOptions | The options to set. |
Exceptions:
Type | Description |
---|---|
ezcBasePropertyNotFoundException |
If you tried to set a non-existent option value. The accepted options depend on the ezcCacheStorage implementation and may vary. |
ezcBaseValueException |
If the value is not valid for the desired option. |
ezcBaseValueException |
If you submit neither an array nor an instance of ezcCacheStorageOptions. |
Redefinition of:
Method | Description |
---|---|
ezcCacheStorage::setOptions() |
Set new options. |