LCStore Interface Reference

Interface for the persistence layer of LocalisationCache. More...

Inherited by LCStore_CDB, LCStore_DB, and LCStore_Null.

List of all members.

Public Member Functions

 get ($code, $key)
 Get a value.
 startWrite ($code)
 Start a write transaction.
 finishWrite ()
 Finish a write transaction.
 set ($key, $value)
 Set a key to a given value.


Detailed Description

Interface for the persistence layer of LocalisationCache.

The persistence layer is two-level hierarchical cache. The first level is the language, the second level is the item or subitem.

Since the data for a whole language is rebuilt in one operation, it needs to have a fast and atomic method for deleting or replacing all of the current data for a given language. The interface reflects this bulk update operation. Callers writing to the cache must first call startWrite(), then will call set() a couple of thousand times, then will call finishWrite() to commit the operation. When finishWrite() is called, the cache is expected to delete all data previously stored for that language.

The values stored are PHP variables suitable for serialize(). Implementations of LCStore are responsible for serializing and unserializing.

Definition at line 719 of file LocalisationCache.php.


Member Function Documentation

LCStore::finishWrite (  ) 

Finish a write transaction.

Implemented in LCStore_DB, LCStore_CDB, and LCStore_Null.

LCStore::get ( code,
key 
)

Get a value.

Parameters:
$code Language code
$key Cache key

Implemented in LCStore_DB, LCStore_CDB, and LCStore_Null.

LCStore::set ( key,
value 
)

Set a key to a given value.

startWrite() must be called before this is called, and finishWrite() must be called afterwards.

Implemented in LCStore_DB, LCStore_CDB, and LCStore_Null.

LCStore::startWrite ( code  ) 

Start a write transaction.

Parameters:
$code Language code

Implemented in LCStore_DB, LCStore_CDB, and LCStore_Null.


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

Generated on Sat Apr 30 22:57:41 2011 for MediaWiki by  doxygen 1.5.9