MediaWiki  REL1_31
LocalFileRestoreBatch Class Reference

Helper class for file undeletion. More...

Collaboration diagram for LocalFileRestoreBatch:

Public Member Functions

 __construct (File $file, $unsuppress=false)
 
 addAll ()
 Add all revisions of the file. More...
 
 addId ( $fa_id)
 Add a file by ID. More...
 
 addIds ( $ids)
 Add a whole lot of files by ID. More...
 
 cleanup ()
 Delete unused files in the deleted zone. More...
 
 execute ()
 Run the transaction, except the cleanup batch. More...
 

Protected Member Functions

 cleanupFailedBatch ( $storeStatus, $storeBatch)
 Cleanup a failed batch. More...
 
 removeNonexistentFiles ( $triplets)
 Removes non-existent files from a store batch. More...
 
 removeNonexistentFromCleanup ( $batch)
 Removes non-existent files from a cleanup batch. More...
 

Private Attributes

bool $all
 Add all revisions of the file. More...
 
string[] $cleanupBatch
 List of file IDs to restore. More...
 
LocalFile $file
 
string[] $ids
 List of file IDs to restore. More...
 
bool $unsuppress = false
 Whether to remove all settings for suppressed fields. More...
 

Detailed Description

Helper class for file undeletion.

Definition at line 2761 of file LocalFile.php.

Constructor & Destructor Documentation

◆ __construct()

LocalFileRestoreBatch::__construct ( File  $file,
  $unsuppress = false 
)
Parameters
File$file
bool$unsuppress

Definition at line 2781 of file LocalFile.php.

References $file, $unsuppress, and file.

Member Function Documentation

◆ addAll()

LocalFileRestoreBatch::addAll ( )

Add all revisions of the file.

Definition at line 2807 of file LocalFile.php.

◆ addId()

LocalFileRestoreBatch::addId (   $fa_id)

Add a file by ID.

Parameters
int$fa_id

Definition at line 2792 of file LocalFile.php.

◆ addIds()

LocalFileRestoreBatch::addIds (   $ids)

Add a whole lot of files by ID.

Parameters
int[]$ids

Definition at line 2800 of file LocalFile.php.

References $ids.

◆ cleanup()

LocalFileRestoreBatch::cleanup ( )

Delete unused files in the deleted zone.

This should be called from outside the transaction in which execute() was called.

Returns
Status

Definition at line 3128 of file LocalFile.php.

References file, and removeNonexistentFromCleanup().

◆ cleanupFailedBatch()

LocalFileRestoreBatch::cleanupFailedBatch (   $storeStatus,
  $storeBatch 
)
protected

Cleanup a failed batch.

The batch was only partially successful, so rollback by removing all items that were succesfully copied.

Parameters
Status$storeStatus
array[]$storeBatch

Definition at line 3147 of file LocalFile.php.

References $cleanupBatch, $success, as, and file.

Referenced by execute().

◆ execute()

LocalFileRestoreBatch::execute ( )

Run the transaction, except the cleanup batch.

The cleanup batch should be run in a separate transaction, because it locks different rows and there's no need to keep the image row locked while it's acquiring those locks The caller may have its own transaction open. So we save the batch and let the caller call cleanup()

Returns
Status

Definition at line 2819 of file LocalFile.php.

References $ids, $user, $wgLang, DeferredUpdates\addUpdate(), as, cleanupFailedBatch(), File\DELETED_FILE, SiteStatsUpdate\factory(), file, LocalRepo\getHashFromKey(), ArchivedFile\getQueryInfo(), CommentStore\getStore(), global, list, User\newFromAnyId(), ActorMigration\newMigration(), FileRepo\OVERWRITE_SAME, removeNonexistentFiles(), RepoGroup\singleton(), wfDebug(), and wfTimestamp().

◆ removeNonexistentFiles()

LocalFileRestoreBatch::removeNonexistentFiles (   $triplets)
protected

Removes non-existent files from a store batch.

Parameters
array$triplets
Returns
Status

Definition at line 3077 of file LocalFile.php.

References $file, as, file, StatusValue\newFatal(), and StatusValue\newGood().

Referenced by execute().

◆ removeNonexistentFromCleanup()

LocalFileRestoreBatch::removeNonexistentFromCleanup (   $batch)
protected

Removes non-existent files from a cleanup batch.

Parameters
string[]$batch
Returns
string[]

Definition at line 3103 of file LocalFile.php.

References $batch, $file, as, and file.

Referenced by cleanup().

Member Data Documentation

◆ $all

bool LocalFileRestoreBatch::$all
private

Add all revisions of the file.

Definition at line 2772 of file LocalFile.php.

◆ $cleanupBatch

string [] LocalFileRestoreBatch::$cleanupBatch
private

List of file IDs to restore.

Definition at line 2766 of file LocalFile.php.

Referenced by cleanupFailedBatch().

◆ $file

LocalFile LocalFileRestoreBatch::$file
private

◆ $ids

string [] LocalFileRestoreBatch::$ids
private

List of file IDs to restore.

Definition at line 2769 of file LocalFile.php.

Referenced by addIds(), and execute().

◆ $unsuppress

bool LocalFileRestoreBatch::$unsuppress = false
private

Whether to remove all settings for suppressed fields.

Definition at line 2775 of file LocalFile.php.

Referenced by __construct().


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