Zeta Components - high quality PHP components

Zeta Components Manual :: Docs For Class ezcCacheStorageFileApcArray

Cache::ezcCacheStorageFileApcArray

Class ezcCacheStorageFileApcArray

This class is a replacement for the ezcCacheStorageFileArray class. Tries to serve data from a local APC cache if possible.

Options for this class are defined in ezcCacheStorageFileApcArrayOptions.

Source for this file: /Cache/src/storage/apc/apc_array.php

ezcCacheStorage
   |
   --ezcCacheStorageMemory
      |
      --ezcCacheStorageApc
         |
         --ezcCacheStorageFileApcArray
Version:   //autogentag//

Inherited Constants

From ezcCacheStorageApc:
ezcCacheStorageApc::BACKEND_NAME    The backend name.
ezcCacheStorageApc::REGISTRY_NAME    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 ezcCacheStorageFileApcArray __construct( $location , [ $options = array()] )
Creates a new cache storage in the given location. The location in case of this storage class must a valid file system directory.
protected int calcLifetime( $filename , [ $useApc = false] )
Calculates the lifetime remaining for a cache object.
public void delete( [ $id = null] , [ $attributes = array()] , [ $search = false] )
Deletes the data associated with $id or $attributes from the cache.
protected mixed fetchData( $filename , [ $useApc = false] )
Fetches the data from the cache.
protected mixed fetchObject( $filename )
Fetches the object from the cache.
protected mixed prepareData( $data , [ $useApc = false] )
Wraps the data in order to be stored in APC ($useApc = true) or on the file system ($useApc = false).
public mixed restore( $id , [ $attributes = array()] , [ $search = false] )
Restores the data from the cache.
public string store( $id , $data , [ $attributes = array()] )
Stores data to the cache storage.
protected void validateLocation( )
Checks the path in the location property exists, and is read-/writable. It throws an exception if not.

Inherited Methods

From ezcCacheStorageApc
public ezcCacheStorageApc ezcCacheStorageApc::__construct()
Creates a new cache storage in the given location.
protected abstract mixed ezcCacheStorageApc::fetchData()
Fetches data from the cache.
protected abstract mixed ezcCacheStorageApc::prepareData()
Prepares the data for storing.
public void ezcCacheStorageApc::setOptions()
Return the currently set options.
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

ezcCacheStorageFileApcArray __construct( string $location , [ $options = array()] )

Creates a new cache storage in the given location. The location in case of this storage class must a valid file system directory.

Options can contain the 'ttl' (Time-To-Live). This is per default set to 1 day. The option 'permissions' can be used to define the file permissions of created cache items.

For details about the options see ezcCacheStorageFileApcArrayOptions.

Parameters:
Name Type Description
$location string Path to the cache location. Must be a valid path
$options array(string=>string) Options for the cache storage
Exceptions:
Type Description
ezcBasePropertyNotFoundException If you tried to set a non-existent option value.
Redefinition of:
Method Description
ezcCacheStorageApc::__construct() Creates a new cache storage in the given location.

calcLifetime

int calcLifetime( string $filename , [bool $useApc = false] )

Calculates the lifetime remaining for a cache object.

If the TTL option is set to false, this method will always return 1 for existing items.

Parameters:
Name Type Description
$filename string The file to calculate the remaining lifetime for
$useApc bool Use APC or not
Redefinition of:
Method Description
ezcCacheStorageMemory::calcLifetime() Calculates the lifetime remaining for a cache object.

delete

void delete( [string $id = null] , [array(string=>string) $attributes = array()] , [bool $search = false] )

Deletes the data associated with $id or $attributes from the cache.

Parameters:
Name Type Description
$id string The item ID to purge
$attributes array(string=>string) Attributes describing the data to restore
$search bool Whether to search for items if not found directly
Exceptions:
Type Description
ezcBaseFilePermissionException If an already existsing cache file could not be unlinked. This exception means most likely that your cache directory has been corrupted by external influences (file permission change).
Redefinition of:
Method Description
ezcCacheStorageMemory::delete() Deletes the data associated with $id or $attributes from the cache.

fetchData

mixed fetchData( string $filename , [bool $useApc = false] )

Fetches the data from the cache.

Parameters:
Name Type Description
$filename string The ID/filename from where to fetch the object
$useApc bool Use APC or the file system
Redefinition of:
Method Description
ezcCacheStorageApc::fetchData() Fetches data from the cache.

fetchObject

mixed fetchObject( string $filename )

Fetches the object from the cache.

Parameters:
Name Type Description
$filename string The ID/filename from where to fetch the data

prepareData

mixed prepareData( mixed $data , [bool $useApc = false] )

Wraps the data in order to be stored in APC ($useApc = true) or on the file system ($useApc = false).

Parameters:
Name Type Description
$data mixed Simple type or array
$useApc bool Use APC or not
Exceptions:
Type Description
ezcCacheInvalidDataException If the data submitted can not be handled by this storage (object, resource).
Redefinition of:
Method Description
ezcCacheStorageApc::prepareData() Prepares the data for storing.

restore

mixed restore( string $id , [array(string=>string) $attributes = array()] , [bool $search = false] )

Restores the data from the cache.

Parameters:
Name Type Description
$id string The item ID to restore
$attributes array(string=>string) Attributes describing the data to restore
$search bool Whether to search for items if not found directly
Redefinition of:
Method Description
ezcCacheStorageMemory::restore() Restores the data from the cache.

store

string store( string $id , mixed $data , [array(string=>string) $attributes = array()] )

Stores data to the cache storage.

Parameters:
Name Type Description
$id string Unique identifier
$data mixed The data to store
$attributes array(string=>string) Attributes describing the cached data
Exceptions:
Type Description
ezcBaseFilePermissionException If the directory to store the cache file could not be created. This exception means most likely that your cache directory has been corrupted by external influences (file permission change).
ezcCacheApcException If the data could not be stored in APC.
ezcBaseFileIoException If an error occured while writing the data to the cache. If this exception occurs, a serious error occured and your storage might be corruped (e.g. broken network connection, file system broken, ...).
ezcCacheInvalidDataException If the data submitted can not be handled by the implementation of ezcCacheStorageFile. Most implementations can not handle objects and resources.
Redefinition of:
Method Description
ezcCacheStorageMemory::store() Stores data to the cache storage under the key $id.

validateLocation

void validateLocation( )

Checks the path in the location property exists, and is read-/writable. It throws an exception if not.

Exceptions:
Type Description
ezcBaseFileNotFoundException If the storage location does not exist. This should usually not happen, since ezcCacheManager::createCache() already performs sanity checks for the cache location. In case this exception is thrown, your cache location has been corrupted after the cache was configured.
ezcBaseFileNotFoundException If the storage location is not a directory. This should usually not happen, since ezcCacheManager::createCache() already performs sanity checks for the cache location. In case this exception is thrown, your cache location has been corrupted after the cache was configured.
ezcBaseFilePermissionException If the storage location is not writeable. This should usually not happen, since ezcCacheManager::createCache() already performs sanity checks for the cache location. In case this exception is thrown, your cache location has been corrupted after the cache was configured.
Redefinition of:
Method Description
ezcCacheStorageMemory::validateLocation() Checks if the location property is valid.
Documentation generated by phpDocumentor 1.4.3