MediaWiki REL1_34
MessageCacheUpdate.php
Go to the documentation of this file.
1<?php
23use Wikimedia\Assert\Assert;
24
33 private $replacements = [];
34
40 public function __construct( $code, $title, $msg ) {
41 $this->replacements[$code][] = [ $title, $msg ];
42 }
43
44 public function merge( MergeableUpdate $update ) {
46 Assert::parameterType( __CLASS__, $update, '$update' );
47 '@phan-var self $update';
48
49 foreach ( $update->replacements as $code => $messages ) {
50 $this->replacements[$code] = array_merge( $this->replacements[$code] ?? [], $messages );
51 }
52 }
53
54 public function doUpdate() {
55 $messageCache = MessageCache::singleton();
56 foreach ( $this->replacements as $code => $replacements ) {
57 $messageCache->refreshAndReplaceInternal( $code, $replacements );
58 }
59 }
60}
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 update with $update.
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.