MediaWiki REL1_33
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, 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().

◆ 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, and as.

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()

static SiteStatsUpdate::factory ( array  $deltas)
static
Parameters
array$deltas
Returns
SiteStatsUpdate

Definition at line 66 of file SiteStatsUpdate.php.

References $name, and as.

Referenced by MediaWiki\Storage\DerivedPageDataUpdater\doUpdates().

◆ 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, and as.

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 $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.

References as.

◆ 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, as, 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.

◆ $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.

◆ $stash

BagOStuff SiteStatsUpdate::$stash
protected

Definition at line 29 of file SiteStatsUpdate.php.

◆ $users

int SiteStatsUpdate::$users = 0
protected

Definition at line 37 of file SiteStatsUpdate.php.


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