MediaWiki REL1_35
MergeableUpdate Interface Reference

Interface that deferrable updates can implement to signal that updates can be combined. More...

Inheritance diagram for MergeableUpdate:
Collaboration diagram for MergeableUpdate:

Public Member Functions

 merge (MergeableUpdate $update)
 Merge this update with $update.
 
- Public Member Functions inherited from DeferrableUpdate
 doUpdate ()
 Perform the actual work.
 

Detailed Description

Interface that deferrable updates can implement to signal that updates can be combined.

DeferredUpdates uses this to merge all pending updates of PHP class into a single update by calling merge(). Note that upon merge(), the combined update goes to the back of the FIFO queue so that such updates occur after related non-mergeable deferred updates. For example, suppose updates that purge URLs can be merged, and the calling pattern is:

  • a) DeferredUpdates::addUpdate( $purgeCdnUrlsA );
  • b) DeferredUpdates::addUpdate( $deleteContentUrlsB );
  • c) DeferredUpdates::addUpdate( $purgeCdnUrlsB )

The purges for urls A and B will all happen after the $deleteContentUrlsB update.

Stable to implement

Since
1.27

Definition at line 20 of file MergeableUpdate.php.

Member Function Documentation

◆ merge()

MergeableUpdate::merge ( MergeableUpdate  $update)

Merge this update with $update.

Parameters
MergeableUpdate$updateUpdate of the same class type

Implemented in CdnCacheUpdate, HtmlFileCacheUpdate, JobQueueEnqueueUpdate, MessageCacheUpdate, SiteStatsUpdate, and UserEditCountUpdate.


The documentation for this interface was generated from the following file: