MediaWiki REL1_32
|
Class for handling file operation journaling. More...
Public Member Functions | |
getChangeEntries ( $start=null, $limit=0, &$next=null) | |
Get an array of file change log entries. | |
getCurrentPosition () | |
Get the position ID of the latest journal entry. | |
getPositionAtTime ( $time) | |
Get the position ID of the latest journal entry at some point in time. | |
getTimestampedUUID () | |
Get a statistically unique ID string. | |
logChangeBatch (array $entries, $batchId) | |
Log changes made by a batch file operation. | |
purgeOldLogs () | |
Purge any old log entries. | |
Static Public Member Functions | |
static | factory (array $config, $backend) |
Create an appropriate FileJournal object from config. | |
Protected Member Functions | |
__construct (array $config) | |
Construct a new instance from configuration. | |
doGetChangeEntries ( $start, $limit) | |
doGetCurrentPosition () | |
doGetPositionAtTime ( $time) | |
doLogChangeBatch (array $entries, $batchId) | |
doPurgeOldLogs () | |
Protected Attributes | |
string | $backend |
int | $ttlDays |
Class for handling file operation journaling.
Subclasses should avoid throwing exceptions at all costs.
Definition at line 37 of file FileJournal.php.
|
protected |
Construct a new instance from configuration.
array | $config | Includes: 'ttlDays' : days to keep log entries around (false means "forever") |
Reimplemented in DBFileJournal.
Definition at line 50 of file FileJournal.php.
|
abstractprotected |
int | $start | |
int | $limit |
Reimplemented in DBFileJournal, and NullFileJournal.
Referenced by getChangeEntries().
|
abstractprotected |
Reimplemented in DBFileJournal, and NullFileJournal.
Referenced by getCurrentPosition().
|
abstractprotected |
int | string | $time | Timestamp |
Reimplemented in DBFileJournal, and NullFileJournal.
Referenced by getPositionAtTime().
|
abstractprotected |
array | $entries | List of file operations (each an array of parameters) |
string | $batchId | UUID string that identifies the operation batch |
Reimplemented in DBFileJournal, and NullFileJournal.
Referenced by logChangeBatch().
|
abstractprotected |
Reimplemented in DBFileJournal, and NullFileJournal.
Referenced by purgeOldLogs().
|
staticfinal |
Create an appropriate FileJournal object from config.
array | $config | |
string | $backend | A registered file backend name |
Exception |
Definition at line 62 of file FileJournal.php.
References $backend.
Referenced by FileBackend\__construct(), FileBackendGroup\config(), and FileBackendTest\setUp().
|
final |
Get an array of file change log entries.
A starting change ID and/or limit can be specified.
int | null | $start | Starting change ID or null |
int | $limit | Maximum number of items to return |
string | null | &$next | Updated to the ID of the next entry. |
Definition at line 165 of file FileJournal.php.
References $last, and doGetChangeEntries().
|
final |
Get the position ID of the latest journal entry.
Definition at line 121 of file FileJournal.php.
References doGetCurrentPosition().
|
final |
Get the position ID of the latest journal entry at some point in time.
int | string | $time | Timestamp |
Definition at line 137 of file FileJournal.php.
References $time, and doGetPositionAtTime().
|
final |
Get a statistically unique ID string.
Definition at line 78 of file FileJournal.php.
References $s, and wfTimestamp().
Referenced by FileOpBatch\attempt().
|
final |
Log changes made by a batch file operation.
array | $entries | List of file operations (each an array of parameters) which contain: op : Basic operation name (create, update, delete) path : The storage path of the file newSha1 : The final base 36 SHA-1 of the file Note that 'false' should be used as the SHA-1 for non-existing files. |
string | $batchId | UUID string that identifies the operation batch |
Definition at line 99 of file FileJournal.php.
References doLogChangeBatch().
Referenced by FileOpBatch\attempt().
|
final |
Purge any old log entries.
Definition at line 190 of file FileJournal.php.
References doPurgeOldLogs().
Referenced by DBFileJournal\doLogChangeBatch().
|
protected |
Definition at line 39 of file FileJournal.php.
Referenced by DBFileJournal\doLogChangeBatch(), and factory().
|
protected |
Definition at line 42 of file FileJournal.php.