Page Menu
Home
WickedGov Phorge
Search
Configure Global Search
Log In
Files
F5971268
LCStore.php
No One
Temporary
Actions
Download File
Edit File
Delete File
View Transforms
Subscribe
Flag For Later
Award Token
Size
2 KB
Referenced Files
None
Subscribers
None
LCStore.php
View Options
<?php
/**
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along
* with this program; if not, write to the Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
* http://www.gnu.org/copyleft/gpl.html
*
* @file
*/
/**
* Interface for the persistence layer of LocalisationCache.
*
* The persistence layer is a 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 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.
*
* @ingroup Language
*/
interface
LCStore
{
/**
* Get a value.
*
* @param string $code Language code
* @param string $key Cache key
*/
public
function
get
(
$code
,
$key
);
/**
* Start a cache write transaction.
*
* @param string $code Language code
*/
public
function
startWrite
(
$code
);
/**
* Finish a cache write transaction.
*/
public
function
finishWrite
();
/**
* Set a key to a given value. startWrite() must be called before this
* is called, and finishWrite() must be called after.
*
* @param string $key
* @param mixed $value
*/
public
function
set
(
$key
,
$value
);
}
File Metadata
Details
Attached
Mime Type
text/x-php
Expires
Sat, Oct 3, 15:04 (8 h, 30 m)
Storage Engine
local-disk
Storage Format
Raw Data
Storage Handle
a7/22/ee38181d823f38066cbb233bb9a3
Default Alt Text
LCStore.php (2 KB)
Attached To
Mode
rMWPROD MediaWiki Production
Attached
Detach File
Event Timeline
Log In to Comment