*/
/**
- * Class to invalidate the HTML cache of all the pages linking to a given title.
+ * Class to invalidate the HTML/file cache of all the pages linking to a given title
*
* @ingroup Cache
*/
-class HTMLCacheUpdate implements DeferrableUpdate {
+class HTMLCacheUpdate extends DataUpdate {
/** @var Title */
- public $mTitle;
-
+ private $title;
/** @var string */
- public $mTable;
+ private $table;
/**
* @param Title $titleTo
* @param string $table
+ * @param string $causeAction Triggering action
+ * @param string $causeAgent Triggering user
*/
- function __construct( Title $titleTo, $table ) {
- $this->mTitle = $titleTo;
- $this->mTable = $table;
+ function __construct(
+ Title $titleTo, $table, $causeAction = 'unknown', $causeAgent = 'unknown'
+ ) {
+ $this->title = $titleTo;
+ $this->table = $table;
+ $this->causeAction = $causeAction;
+ $this->causeAgent = $causeAgent;
}
public function doUpdate() {
- $job = HTMLCacheUpdateJob::newForBacklinks( $this->mTitle, $this->mTable );
+ $job = HTMLCacheUpdateJob::newForBacklinks(
+ $this->title,
+ $this->table,
+ [ 'causeAction' => $this->getCauseAction(), 'causeAgent' => $this->getCauseAgent() ]
+ );
JobQueueGroup::singleton()->lazyPush( $job );
}