MediaWiki  master
DBFileJournal Class Reference

Version of FileJournal that logs to a DB table. More...

Inheritance diagram for DBFileJournal:
Collaboration diagram for DBFileJournal:

Protected Member Functions

 __construct (array $config)
 Construct a new instance from configuration. More...
 
 doGetChangeEntries ( $start, $limit)
 
 doGetCurrentPosition ()
 
 doGetPositionAtTime ( $time)
 
 doLogChangeBatch (array $entries, $batchId)
 
 doPurgeOldLogs ()
 
 getMasterDB ()
 Get a master connection to the logging DB. More...
 
- Protected Member Functions inherited from FileJournal
 __construct (array $config)
 Construct a new instance from configuration. More...
 
 doGetChangeEntries ( $start, $limit)
 
 doGetCurrentPosition ()
 
 doGetPositionAtTime ( $time)
 
 doLogChangeBatch (array $entries, $batchId)
 
 doPurgeOldLogs ()
 

Protected Attributes

IDatabase $dbw
 
string $domain
 
- Protected Attributes inherited from FileJournal
string $backend
 
int $ttlDays
 

Additional Inherited Members

- Public Member Functions inherited from FileJournal
 getChangeEntries ( $start=null, $limit=0, &$next=null)
 Get an array of file change log entries. More...
 
 getCurrentPosition ()
 Get the position ID of the latest journal entry. More...
 
 getPositionAtTime ( $time)
 Get the position ID of the latest journal entry at some point in time. More...
 
 getTimestampedUUID ()
 Get a statistically unique ID string. More...
 
 logChangeBatch (array $entries, $batchId)
 Log changes made by a batch file operation. More...
 
 purgeOldLogs ()
 Purge any old log entries. More...
 
- Static Public Member Functions inherited from FileJournal
static factory (array $config, $backend)
 Create an appropriate FileJournal object from config. More...
 

Detailed Description

Version of FileJournal that logs to a DB table.

Since
1.20

Definition at line 32 of file DBFileJournal.php.

Constructor & Destructor Documentation

◆ __construct()

DBFileJournal::__construct ( array  $config)
protected

Construct a new instance from configuration.

Parameters
array$configIncludes: domain: database domain ID of the wiki

Definition at line 44 of file DBFileJournal.php.

Member Function Documentation

◆ doGetChangeEntries()

DBFileJournal::doGetChangeEntries (   $start,
  $limit 
)
protected
See also
FileJournal::doGetChangeEntries()
Parameters
int | null$start
int$limit
Returns
array[]

Definition at line 131 of file DBFileJournal.php.

References $res, $value, Wikimedia\Rdbms\IDatabase\addQuotes(), as, getMasterDB(), and Wikimedia\Rdbms\IDatabase\select().

◆ doGetCurrentPosition()

DBFileJournal::doGetCurrentPosition ( )
protected
See also
FileJournal::doGetCurrentPosition()
Returns
bool|mixed The value from the field, or false on failure.

Definition at line 99 of file DBFileJournal.php.

References getMasterDB(), and Wikimedia\Rdbms\IDatabase\selectField().

◆ doGetPositionAtTime()

DBFileJournal::doGetPositionAtTime (   $time)
protected
See also
FileJournal::doGetPositionAtTime()
Parameters
int | string$timeTimestamp
Returns
bool|mixed The value from the field, or false on failure.

Definition at line 113 of file DBFileJournal.php.

References $time, Wikimedia\Rdbms\IDatabase\addQuotes(), getMasterDB(), Wikimedia\Rdbms\IDatabase\selectField(), and Wikimedia\Rdbms\IDatabase\timestamp().

◆ doLogChangeBatch()

DBFileJournal::doLogChangeBatch ( array  $entries,
  $batchId 
)
protected

◆ doPurgeOldLogs()

DBFileJournal::doPurgeOldLogs ( )
protected

◆ getMasterDB()

DBFileJournal::getMasterDB ( )
protected

Get a master connection to the logging DB.

Returns
IDatabase
Exceptions
DBError

Definition at line 183 of file DBFileJournal.php.

References $dbw, DB_MASTER, and DBO_TRX.

Referenced by doGetChangeEntries(), doGetCurrentPosition(), doGetPositionAtTime(), doLogChangeBatch(), and doPurgeOldLogs().

Member Data Documentation

◆ $dbw

IDatabase DBFileJournal::$dbw
protected

Definition at line 34 of file DBFileJournal.php.

Referenced by getMasterDB().

◆ $domain

string DBFileJournal::$domain
protected

Definition at line 36 of file DBFileJournal.php.


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