MediaWiki
1.23.2
|
This class provides access to the resource message blobs storage used by the ResourceLoader. More...
Static Public Member Functions | |
static | clear () |
static | get (ResourceLoader $resourceLoader, $modules, $lang) |
Get the message blobs for a set of modules. More... | |
static | insertMessageBlob ( $name, ResourceLoaderModule $module, $lang) |
Generate and insert a new message blob. More... | |
static | updateMessage ( $key) |
Update a single message in all message blobs it occurs in. More... | |
static | updateModule ( $name, ResourceLoaderModule $module, $lang) |
Update the message blob for a given module in a given language. More... | |
Static Private Member Functions | |
static | generateMessageBlob (ResourceLoaderModule $module, $lang) |
Generate the message blob for a given module in a given language. More... | |
static | getFromDB (ResourceLoader $resourceLoader, $modules, $lang) |
Get the message blobs for a set of modules from the database. More... | |
static | getUpdatesForMessage ( $key, $prevUpdates=null) |
Create an update queue for updateMessage() More... | |
static | reencodeBlob ( $blob, $key, $lang) |
Reencode a message blob with the updated value for a message. More... | |
This class provides access to the resource message blobs storage used by the ResourceLoader.
A message blob is a JSON object containing the interface messages for a certain resource in a certain language. These message blobs are cached in the msg_resource table and automatically invalidated when one of their constituent messages or the resource itself is changed.
Definition at line 34 of file MessageBlobStore.php.
|
static |
Definition at line 243 of file MessageBlobStore.php.
References $e, DB_MASTER, wfDebug(), and wfGetDB().
Referenced by DatabaseUpdater\purgeCache(), and LocalisationCache\recache().
|
staticprivate |
Generate the message blob for a given module in a given language.
$module | ResourceLoaderModule object | |
string | $lang | language code |
Definition at line 368 of file MessageBlobStore.php.
References $messages, array(), as, FormatJson\encode(), ResourceLoaderModule\getMessages(), and wfMessage().
Referenced by insertMessageBlob(), and updateModule().
|
static |
Get the message blobs for a set of modules.
$resourceLoader | ResourceLoader object | |
array | $modules | Array of module objects keyed by module name |
string | $lang | Language code |
Definition at line 44 of file MessageBlobStore.php.
References $blob, $name, $resourceLoader, array(), as, getFromDB(), insertMessageBlob(), wfProfileIn(), and wfProfileOut().
Referenced by ResourceLoader\makeModuleResponse().
|
staticprivate |
Get the message blobs for a set of modules from the database.
Modules whose blobs are not in the database are silently dropped.
$resourceLoader | ResourceLoader object | |
array | $modules | of module names |
string | $lang | language code |
MWException |
Definition at line 332 of file MessageBlobStore.php.
References $dbr, $res, $resourceLoader, $retval, array(), as, DB_SLAVE, FormatJson\decode(), global, TS_MW, updateModule(), wfGetDB(), and wfTimestamp().
Referenced by get().
|
staticprivate |
Create an update queue for updateMessage()
string | $key | message key |
array | $prevUpdates | updates queue to refresh or null to build a fresh update queue |
Definition at line 263 of file MessageBlobStore.php.
References $res, array(), as, DB_MASTER, and wfGetDB().
Referenced by updateMessage().
|
static |
Generate and insert a new message blob.
If the blob was already present, it is not regenerated; instead, the preexisting blob is fetched and returned.
string | $name | module name |
$module | ResourceLoaderModule object | |
string | $lang | language code |
Definition at line 76 of file MessageBlobStore.php.
References $blob, $e, $name, $success, array(), as, DB_MASTER, generateMessageBlob(), ResourceLoaderModule\getMessages(), wfDebug(), and wfGetDB().
Referenced by get().
|
staticprivate |
Reencode a message blob with the updated value for a message.
string | $blob | message blob (JSON object) |
string | $key | message key |
string | $lang | language code |
Definition at line 315 of file MessageBlobStore.php.
References $blob, FormatJson\decode(), FormatJson\encode(), and wfMessage().
|
static |
Update a single message in all message blobs it occurs in.
string | $key | message key |
Definition at line 200 of file MessageBlobStore.php.
References $e, $success, array(), as, DB_MASTER, getUpdatesForMessage(), wfDebug(), and wfGetDB().
Referenced by MessageCache\replace().
|
static |
Update the message blob for a given module in a given language.
string | $name | module name |
$module | ResourceLoaderModule object | |
string | $lang | language code |
Definition at line 133 of file MessageBlobStore.php.
References $e, $name, array(), as, DB_MASTER, FormatJson\decode(), generateMessageBlob(), wfDebug(), and wfGetDB().
Referenced by getFromDB().