MediaWiki master
LocalFileMoveBatch Class Reference

Helper class for file movement. More...

Collaboration diagram for LocalFileMoveBatch:

Public Member Functions

 __construct (LocalFile $file, Title $target)
 
 addCurrent ()
 Add the current image to the batch.
 
 addOlds ()
 Add the old versions of the image to the batch.
 
 execute ()
 Perform the move.
 

Protected Member Functions

 acquireSourceLock ()
 Acquire the source file lock, if it has not been acquired already.
 
 acquireTargetLock ()
 Acquire the target file lock, if it has not been acquired already.
 
 cleanupSource ( $triplets)
 Cleanup a fully moved array of triplets by deleting the source files.
 
 cleanupTarget ( $triplets)
 Cleanup a partially moved array of triplets by deleting the target files.
 
 doDBUpdates ()
 Do the database updates and return a new Status indicating how many rows where updated.
 
 getMoveTriplets ()
 Generate triplets for FileRepo::storeBatch().
 
 getTargetFile ()
 Get the target file.
 
 releaseLocks ()
 Release both file locks.
 
 removeNonexistentFiles ( $triplets)
 Removes non-existent files from move batch.
 
 verifyDBUpdates ()
 Verify the database updates and return a new Status indicating how many rows would be updated.
 

Protected Attributes

string[] $cur
 
IDatabase $db
 
LocalFile $file
 
string $newHash
 
string $newName
 
string $newRel
 
int $oldCount
 
string $oldHash
 
string $oldName
 
string $oldRel
 
string[][] $olds
 
Title $target
 

Detailed Description

Helper class for file movement.

Definition at line 35 of file LocalFileMoveBatch.php.

Constructor & Destructor Documentation

◆ __construct()

LocalFileMoveBatch::__construct ( LocalFile $file,
Title $target )
Parameters
LocalFile$file
Title$target

Definition at line 88 of file LocalFileMoveBatch.php.

References $file, $newName, $oldName, $target, and LocalFile\getRepo().

Member Function Documentation

◆ acquireSourceLock()

LocalFileMoveBatch::acquireSourceLock ( )
protected

Acquire the source file lock, if it has not been acquired already.

Returns
Status

Definition at line 176 of file LocalFileMoveBatch.php.

Referenced by addCurrent(), and execute().

◆ acquireTargetLock()

LocalFileMoveBatch::acquireTargetLock ( )
protected

Acquire the target file lock, if it has not been acquired already.

Returns
Status

Definition at line 192 of file LocalFileMoveBatch.php.

References getTargetFile().

Referenced by execute().

◆ addCurrent()

LocalFileMoveBatch::addCurrent ( )

Add the current image to the batch.

Returns
Status

Definition at line 107 of file LocalFileMoveBatch.php.

References $newRel, $oldRel, and acquireSourceLock().

◆ addOlds()

LocalFileMoveBatch::addOlds ( )

Add the old versions of the image to the batch.

Returns
string[] List of archive names from old versions

Definition at line 119 of file LocalFileMoveBatch.php.

References $oldName.

◆ cleanupSource()

LocalFileMoveBatch::cleanupSource ( $triplets)
protected

Cleanup a fully moved array of triplets by deleting the source files.

Called at the end of the move process if everything else went ok.

Parameters
array[]$triplets

Definition at line 481 of file LocalFileMoveBatch.php.

Referenced by execute().

◆ cleanupTarget()

LocalFileMoveBatch::cleanupTarget ( $triplets)
protected

Cleanup a partially moved array of triplets by deleting the target files.

Called if something went wrong half way.

Parameters
array[]$triplets

Definition at line 465 of file LocalFileMoveBatch.php.

Referenced by execute().

◆ doDBUpdates()

LocalFileMoveBatch::doDBUpdates ( )
protected

Do the database updates and return a new Status indicating how many rows where updated.

Definition at line 376 of file LocalFileMoveBatch.php.

References $db, and Wikimedia\Rdbms\IDatabase\newUpdateQueryBuilder().

Referenced by execute().

◆ execute()

◆ getMoveTriplets()

LocalFileMoveBatch::getMoveTriplets ( )
protected

Generate triplets for FileRepo::storeBatch().

Returns
array[]

Definition at line 405 of file LocalFileMoveBatch.php.

Referenced by execute().

◆ getTargetFile()

LocalFileMoveBatch::getTargetFile ( )
protected

Get the target file.

Returns
LocalFile

Definition at line 222 of file LocalFileMoveBatch.php.

Referenced by acquireTargetLock(), and releaseLocks().

◆ releaseLocks()

LocalFileMoveBatch::releaseLocks ( )
protected

Release both file locks.

Definition at line 206 of file LocalFileMoveBatch.php.

References getTargetFile().

Referenced by execute().

◆ removeNonexistentFiles()

LocalFileMoveBatch::removeNonexistentFiles ( $triplets)
protected

Removes non-existent files from move batch.

Parameters
array[]$triplets
Returns
Status

Definition at line 432 of file LocalFileMoveBatch.php.

References $file.

Referenced by execute().

◆ verifyDBUpdates()

LocalFileMoveBatch::verifyDBUpdates ( )
protected

Verify the database updates and return a new Status indicating how many rows would be updated.

Returns
Status

Definition at line 334 of file LocalFileMoveBatch.php.

References $db, and Wikimedia\Rdbms\IReadableDatabase\newSelectQueryBuilder().

Referenced by execute().

Member Data Documentation

◆ $cur

string [] LocalFileMoveBatch::$cur
protected

Definition at line 43 of file LocalFileMoveBatch.php.

◆ $db

IDatabase LocalFileMoveBatch::$db
protected

Definition at line 52 of file LocalFileMoveBatch.php.

Referenced by doDBUpdates(), and verifyDBUpdates().

◆ $file

LocalFile LocalFileMoveBatch::$file
protected

Definition at line 37 of file LocalFileMoveBatch.php.

Referenced by __construct(), and removeNonexistentFiles().

◆ $newHash

string LocalFileMoveBatch::$newHash
protected

Definition at line 58 of file LocalFileMoveBatch.php.

◆ $newName

string LocalFileMoveBatch::$newName
protected

Definition at line 64 of file LocalFileMoveBatch.php.

Referenced by __construct().

◆ $newRel

string LocalFileMoveBatch::$newRel
protected

Definition at line 70 of file LocalFileMoveBatch.php.

Referenced by addCurrent().

◆ $oldCount

int LocalFileMoveBatch::$oldCount
protected

Definition at line 49 of file LocalFileMoveBatch.php.

◆ $oldHash

string LocalFileMoveBatch::$oldHash
protected

Definition at line 55 of file LocalFileMoveBatch.php.

◆ $oldName

string LocalFileMoveBatch::$oldName
protected

Definition at line 61 of file LocalFileMoveBatch.php.

Referenced by __construct(), and addOlds().

◆ $oldRel

string LocalFileMoveBatch::$oldRel
protected

Definition at line 67 of file LocalFileMoveBatch.php.

Referenced by addCurrent().

◆ $olds

string [][] LocalFileMoveBatch::$olds
protected

Definition at line 46 of file LocalFileMoveBatch.php.

◆ $target

Title LocalFileMoveBatch::$target
protected

Definition at line 40 of file LocalFileMoveBatch.php.

Referenced by __construct().


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