MediaWiki REL1_31
SiteStatsUpdate Class Reference

Class for handling updates to the site_stats table. More...

Inheritance diagram for SiteStatsUpdate:
Collaboration diagram for SiteStatsUpdate:

Public Member Functions

 __construct ( $views, $edits, $good, $pages=0, $users=0)
 
 doUpdate ()
 Perform the actual work.
 
 merge (MergeableUpdate $update)
 Merge this update with $update.
 
 tryDBUpdateInternal ()
 Do not call this outside of SiteStatsUpdate.
 

Static Public Member Functions

static cacheUpdate (IDatabase $dbw)
 
static factory (array $deltas)
 

Protected Member Functions

 adjustPending ( $type, $delta)
 Adjust the pending deltas for a stat type.
 
 appendUpdate (&$sql, $field, $delta)
 
 doUpdateContextStats ()
 
 doUpdatePendingDeltas ()
 
 getPendingDeltas ()
 Get pending delta counters for each stat type.
 
 removePendingDeltas (array $pd)
 Reduce pending delta counters after updates have been applied.
 

Protected Attributes

int $articles = 0
 
int $edits = 0
 
int $images = 0
 
int $pages = 0
 
BagOStuff $stash
 
int $users = 0
 

Private Member Functions

 getTypeCacheKey (BagOStuff $stash, $type, $sign)
 

Static Private Attributes

static $counters = [ 'edits', 'pages', 'articles', 'users', 'images' ]
 

Detailed Description

Class for handling updates to the site_stats table.

Definition at line 27 of file SiteStatsUpdate.php.

Constructor & Destructor Documentation

◆ __construct()

SiteStatsUpdate::__construct ( $views,
$edits,
$good,
$pages = 0,
$users = 0 )

Definition at line 44 of file SiteStatsUpdate.php.

References $edits, $pages, $users, edits, and pages.

Member Function Documentation

◆ adjustPending()

SiteStatsUpdate::adjustPending ( $type,
$delta )
protected

Adjust the pending deltas for a stat type.

Each stat type has two pending counters, one for increments and decrements

Parameters
string$type
int$deltaDelta (positive or negative)

Definition at line 238 of file SiteStatsUpdate.php.

References $type, and getTypeCacheKey().

Referenced by doUpdatePendingDeltas().

◆ appendUpdate()

SiteStatsUpdate::appendUpdate ( & $sql,
$field,
$delta )
protected
Parameters
string&$sql
string$field
int$delta

Definition at line 209 of file SiteStatsUpdate.php.

Referenced by tryDBUpdateInternal().

◆ cacheUpdate()

static SiteStatsUpdate::cacheUpdate ( IDatabase $dbw)
static
Parameters
IDatabase$dbw
Returns
bool|mixed

Definition at line 150 of file SiteStatsUpdate.php.

References $dbr, $services, DB_REPLICA, RC_EXTERNAL, SiteStats\unload(), and Wikimedia\Rdbms\IDatabase\update().

Referenced by SiteStatsInit\doAllAndCommit(), and InitSiteStats\execute().

◆ doUpdate()

SiteStatsUpdate::doUpdate ( )

Perform the actual work.

Implements DeferrableUpdate.

Definition at line 84 of file SiteStatsUpdate.php.

References doUpdateContextStats(), and doUpdatePendingDeltas().

◆ doUpdateContextStats()

SiteStatsUpdate::doUpdateContextStats ( )
protected

Definition at line 186 of file SiteStatsUpdate.php.

References $type.

Referenced by doUpdate().

◆ doUpdatePendingDeltas()

SiteStatsUpdate::doUpdatePendingDeltas ( )
protected

Definition at line 196 of file SiteStatsUpdate.php.

References adjustPending(), edits, and pages.

Referenced by doUpdate(), and tryDBUpdateInternal().

◆ factory()

◆ getPendingDeltas()

SiteStatsUpdate::getPendingDeltas ( )
protected

Get pending delta counters for each stat type.

Returns
array Positive and negative deltas for each type

Definition at line 253 of file SiteStatsUpdate.php.

References $type.

Referenced by tryDBUpdateInternal().

◆ getTypeCacheKey()

SiteStatsUpdate::getTypeCacheKey ( BagOStuff $stash,
$type,
$sign )
private
Parameters
BagOStuff$stash
string$type
string$sign('+' or '-')
Returns
string

Definition at line 228 of file SiteStatsUpdate.php.

References $stash, $type, and BagOStuff\makeKey().

Referenced by adjustPending(), and removePendingDeltas().

◆ merge()

SiteStatsUpdate::merge ( MergeableUpdate $update)

Merge this update with $update.

Parameters
MergeableUpdate$updateUpdate of the same class type

Implements MergeableUpdate.

Definition at line 53 of file SiteStatsUpdate.php.

◆ removePendingDeltas()

SiteStatsUpdate::removePendingDeltas ( array $pd)
protected

Reduce pending delta counters after updates have been applied.

Parameters
array$pdResult of getPendingDeltas(), used for DB update

Definition at line 277 of file SiteStatsUpdate.php.

References $type, and getTypeCacheKey().

Referenced by tryDBUpdateInternal().

◆ tryDBUpdateInternal()

SiteStatsUpdate::tryDBUpdateInternal ( )

Member Data Documentation

◆ $articles

int SiteStatsUpdate::$articles = 0
protected

Definition at line 35 of file SiteStatsUpdate.php.

◆ $counters

SiteStatsUpdate::$counters = [ 'edits', 'pages', 'articles', 'users', 'images' ]
staticprivate

Definition at line 41 of file SiteStatsUpdate.php.

◆ $edits

int SiteStatsUpdate::$edits = 0
protected

Definition at line 31 of file SiteStatsUpdate.php.

Referenced by __construct().

◆ $images

int SiteStatsUpdate::$images = 0
protected

Definition at line 39 of file SiteStatsUpdate.php.

◆ $pages

int SiteStatsUpdate::$pages = 0
protected

Definition at line 33 of file SiteStatsUpdate.php.

Referenced by __construct().

◆ $stash

BagOStuff SiteStatsUpdate::$stash
protected

Definition at line 29 of file SiteStatsUpdate.php.

Referenced by getTypeCacheKey().

◆ $users

int SiteStatsUpdate::$users = 0
protected

Definition at line 37 of file SiteStatsUpdate.php.

Referenced by __construct().


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