MediaWiki REL1_33
|
Simple store for keeping values in an associative array for the current process. More...
Public Member Functions | |
__construct ( $params=[]) | |
add ( $key, $value, $exptime=0, $flags=0) | |
Insert an item if it does not already exist. | |
clear () | |
Clear all values in cache. | |
delete ( $key, $flags=0) | |
Delete an item. | |
incr ( $key, $value=1) | |
Increase stored value of $key by $value while preserving its TTL. | |
set ( $key, $value, $exptime=0, $flags=0) | |
Set an item. | |
Public Member Functions inherited from BagOStuff | |
__construct (array $params=[]) | |
$params include: | |
addBusyCallback (callable $workCallback) | |
Let a callback be run to avoid wasting time on special blocking calls. | |
changeTTL ( $key, $expiry=0, $flags=0) | |
Change the expiration on a key if it exists. | |
clearLastError () | |
Clear the "last error" registry. | |
decr ( $key, $value=1) | |
Decrease stored value of $key by $value while preserving its TTL. | |
deleteMulti (array $keys, $flags=0) | |
Batch deletion. | |
deleteObjectsExpiringBefore ( $date, $progressCallback=false) | |
Delete all objects expiring before a certain date. | |
get ( $key, $flags=0) | |
Get an item with the given key. | |
getLastError () | |
Get the "last error" registered; clearLastError() should be called manually. | |
getMulti (array $keys, $flags=0) | |
Get an associative array containing the item for each of the keys that have items. | |
getQoS ( $flag) | |
getScopedLock ( $key, $timeout=6, $expiry=30, $rclass='') | |
Get a lightweight exclusive self-unlocking lock. | |
getWithSetCallback ( $key, $ttl, $callback, $flags=0) | |
Get an item with the given key, regenerating and setting it if not found. | |
incrWithInit ( $key, $ttl, $value=1, $init=1) | |
Increase stored value of $key by $value while preserving its TTL. | |
lock ( $key, $timeout=6, $expiry=6, $rclass='') | |
Acquire an advisory lock on a key string. | |
makeGlobalKey ( $class, $component=null) | |
Make a global cache key. | |
makeKey ( $class, $component=null) | |
Make a cache key, scoped to this instance's keyspace. | |
makeKeyInternal ( $keyspace, $args) | |
Construct a cache key. | |
merge ( $key, callable $callback, $exptime=0, $attempts=10, $flags=0) | |
Merge changes into the existing cache value (possibly creating a new one) | |
setDebug ( $bool) | |
setLogger (LoggerInterface $logger) | |
setMockTime (&$time) | |
setMulti (array $data, $exptime=0, $flags=0) | |
Batch insertion/replace. | |
unlock ( $key) | |
Release an advisory lock on a key string. | |
Public Attributes | |
const | KEY_CAS = 2 |
const | KEY_EXP = 1 |
const | KEY_VAL = 0 |
Public Attributes inherited from BagOStuff | |
const | READ_LATEST = 1 |
Bitfield constants for get()/getMulti() | |
const | READ_VERIFIED = 2 |
const | WRITE_CACHE_ONLY = 8 |
const | WRITE_SYNC = 4 |
Bitfield constants for set()/merge() | |
Public Attributes inherited from IExpiringStore | |
const | ATTR_EMULATION = 1 |
const | ATTR_SYNCWRITES = 2 |
const | ERR_NO_RESPONSE = 1 |
const | ERR_NONE = 0 |
const | ERR_UNEXPECTED = 3 |
const | ERR_UNREACHABLE = 2 |
const | QOS_EMULATION_SQL = 1 |
const | QOS_SYNCWRITES_BE = 2 |
const | QOS_SYNCWRITES_NONE = 1 |
const | QOS_SYNCWRITES_QC = 3 |
const | QOS_SYNCWRITES_SS = 4 |
const | QOS_UNKNOWN = INF |
const | TTL_DAY = 86400 |
const | TTL_HOUR = 3600 |
const | TTL_INDEFINITE = 0 |
const | TTL_MINUTE = 60 |
const | TTL_MONTH = 2592000 |
const | TTL_PROC_LONG = 30 |
const | TTL_PROC_SHORT = 3 |
const | TTL_SECOND = 1 |
const | TTL_WEEK = 604800 |
const | TTL_YEAR = 31536000 |
Protected Member Functions | |
doGet ( $key, $flags=0, &$casToken=null) | |
expire ( $key) | |
hasKey ( $key) | |
Does this bag have a non-null value for the given key? | |
Protected Member Functions inherited from BagOStuff | |
cas ( $casToken, $key, $value, $exptime=0, $flags=0) | |
Check and set an item. | |
convertToExpiry ( $exptime) | |
Convert an optionally relative time to an absolute time. | |
convertToRelative ( $exptime) | |
Convert an optionally absolute expiry time to a relative time. | |
debug ( $text) | |
expiryIsRelative ( $exptime) | |
getCurrentTime () | |
isInteger ( $value) | |
Check if a value is an integer. | |
mergeFlagMaps (array $bags) | |
Merge the flag maps of one or more BagOStuff objects into a "lowest common denominator" map. | |
mergeViaCas ( $key, $callback, $exptime=0, $attempts=10, $flags=0) | |
setLastError ( $err) | |
Set the "last error" registry. | |
Protected Attributes | |
mixed[] | $bag = [] |
int | $maxCacheKeys |
Max entries allowed. | |
Protected Attributes inherited from BagOStuff | |
callable null | $asyncHandler |
int[] | $attrMap = [] |
Map of (ATTR_* class constant => QOS_* class constant) | |
callable[] | $busyCallbacks = [] |
string | $keyspace = 'local' |
int | $lastError = self::ERR_NONE |
ERR_* class constant. | |
array[] | $locks = [] |
Lock tracking. | |
LoggerInterface | $logger |
int | $syncTimeout |
Seconds. | |
Private Attributes | |
string | $token |
CAS token prefix for this instance. | |
Static Private Attributes | |
static int | $casCounter = 0 |
CAS token counter. | |
Simple store for keeping values in an associative array for the current process.
Data will not persist and is not shared with other processes.
Definition at line 31 of file HashBagOStuff.php.
HashBagOStuff::__construct | ( | $params = [] | ) |
array | $params | Additional parameters include:
|
Definition at line 51 of file HashBagOStuff.php.
References $params.
HashBagOStuff::add | ( | $key, | |
$value, | |||
$exptime = 0 , |
|||
$flags = 0 |
|||
) |
Insert an item if it does not already exist.
string | $key | |
mixed | $value | |
int | $exptime | |
int | $flags | Bitfield of BagOStuff::WRITE_* constants (since 1.33) |
Reimplemented from BagOStuff.
Reimplemented in CachedBagOStuff.
Definition at line 96 of file HashBagOStuff.php.
References $value.
HashBagOStuff::clear | ( | ) |
Clear all values in cache.
Definition at line 125 of file HashBagOStuff.php.
HashBagOStuff::delete | ( | $key, | |
$flags = 0 |
|||
) |
Delete an item.
string | $key |
int | $flags | Bitfield of BagOStuff::WRITE_* constants |
Reimplemented from BagOStuff.
Reimplemented in CachedBagOStuff.
Definition at line 104 of file HashBagOStuff.php.
|
protected |
string | $key | |
int | $flags | Bitfield of BagOStuff::READ_* constants [optional] |
mixed | null | &$casToken | Token to use for check-and-set comparisons |
Reimplemented from BagOStuff.
Definition at line 61 of file HashBagOStuff.php.
|
protected |
string | $key |
Definition at line 133 of file HashBagOStuff.php.
References BagOStuff\getCurrentTime().
Referenced by doGet().
|
protected |
Does this bag have a non-null value for the given key?
string | $key |
Definition at line 151 of file HashBagOStuff.php.
Referenced by doGet(), and CachedBagOStuff\get().
HashBagOStuff::incr | ( | $key, | |
$value = 1 |
|||
) |
Increase stored value of $key by $value while preserving its TTL.
string | $key | Key to increase |
int | $value | Value to add to $key (default: 1) [optional] |
Reimplemented from BagOStuff.
Reimplemented in CachedBagOStuff.
Definition at line 110 of file HashBagOStuff.php.
References $value, and BagOStuff\isInteger().
HashBagOStuff::set | ( | $key, | |
$value, | |||
$exptime = 0 , |
|||
$flags = 0 |
|||
) |
Set an item.
string | $key | |
mixed | $value | |
int | $exptime | Either an interval in seconds or a unix timestamp for expiry |
int | $flags | Bitfield of BagOStuff::WRITE_* constants |
Reimplemented from BagOStuff.
Reimplemented in CachedBagOStuff.
Definition at line 78 of file HashBagOStuff.php.
References $value, BagOStuff\convertToExpiry(), and key.
|
protected |
Definition at line 33 of file HashBagOStuff.php.
|
staticprivate |
CAS token counter.
Definition at line 41 of file HashBagOStuff.php.
|
protected |
Max entries allowed.
Definition at line 35 of file HashBagOStuff.php.
|
private |
CAS token prefix for this instance.
Definition at line 38 of file HashBagOStuff.php.
const HashBagOStuff::KEY_CAS = 2 |
Definition at line 45 of file HashBagOStuff.php.
const HashBagOStuff::KEY_EXP = 1 |
Definition at line 44 of file HashBagOStuff.php.
const HashBagOStuff::KEY_VAL = 0 |
Definition at line 43 of file HashBagOStuff.php.