MediaWiki REL1_37
MessageCacheUpdate.php
Go to the documentation of this file.
1<?php
24use Wikimedia\Assert\Assert;
25
34 private $replacements = [];
35
41 public function __construct( $code, $title, $msg ) {
42 $this->replacements[$code][] = [ $title, $msg ];
43 }
44
45 public function merge( MergeableUpdate $update ) {
47 Assert::parameterType( __CLASS__, $update, '$update' );
48 '@phan-var self $update';
49
50 foreach ( $update->replacements as $code => $messages ) {
51 $this->replacements[$code] = array_merge( $this->replacements[$code] ?? [], $messages );
52 }
53 }
54
55 public function doUpdate() {
56 $messageCache = MediaWikiServices::getInstance()->getMessageCache();
57 foreach ( $this->replacements as $code => $replacements ) {
58 $messageCache->refreshAndReplaceInternal( $code, $replacements );
59 }
60 }
61}
MediaWikiServices is the service locator for the application scope of MediaWiki.
Message cache purging and in-place update handler for specific message page changes.
array[] $replacements
Map of (language code => list of (DB key, DB key without code))
merge(MergeableUpdate $update)
Merge this enqueued update with a new MergeableUpdate of the same qualified class name.
doUpdate()
Perform the actual work.
__construct( $code, $title, $msg)
Interface that deferrable updates should implement.
Interface that deferrable updates can implement to signal that updates can be combined.