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

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

Detailed Description

Helper class for file movement.

Definition at line 34 of file LocalFileMoveBatch.php.

Constructor & Destructor Documentation

◆ __construct()

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

Definition at line 86 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 174 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 190 of file LocalFileMoveBatch.php.

References getTargetFile().

Referenced by execute().

◆ addCurrent()

LocalFileMoveBatch::addCurrent ( )

Add the current image to the batch.

Returns
Status

Definition at line 105 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 117 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 479 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 463 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 374 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 403 of file LocalFileMoveBatch.php.

Referenced by execute().

◆ getTargetFile()

LocalFileMoveBatch::getTargetFile ( )
protected

Get the target file.

Returns
LocalFile

Definition at line 220 of file LocalFileMoveBatch.php.

Referenced by acquireTargetLock(), and releaseLocks().

◆ releaseLocks()

LocalFileMoveBatch::releaseLocks ( )
protected

Release both file locks.

Definition at line 204 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 430 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 332 of file LocalFileMoveBatch.php.

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

Referenced by execute().

Member Data Documentation

◆ $archive

LocalFileMoveBatch::$archive
protected

Definition at line 47 of file LocalFileMoveBatch.php.

◆ $cur

LocalFileMoveBatch::$cur
protected

Definition at line 41 of file LocalFileMoveBatch.php.

◆ $db

IDatabase LocalFileMoveBatch::$db
protected

Definition at line 50 of file LocalFileMoveBatch.php.

Referenced by doDBUpdates(), and verifyDBUpdates().

◆ $file

LocalFile LocalFileMoveBatch::$file
protected

Definition at line 36 of file LocalFileMoveBatch.php.

Referenced by __construct(), and removeNonexistentFiles().

◆ $newHash

string LocalFileMoveBatch::$newHash
protected

Definition at line 56 of file LocalFileMoveBatch.php.

◆ $newName

string LocalFileMoveBatch::$newName
protected

Definition at line 62 of file LocalFileMoveBatch.php.

Referenced by __construct().

◆ $newRel

string LocalFileMoveBatch::$newRel
protected

Definition at line 68 of file LocalFileMoveBatch.php.

Referenced by addCurrent().

◆ $oldCount

LocalFileMoveBatch::$oldCount
protected

Definition at line 45 of file LocalFileMoveBatch.php.

◆ $oldHash

string LocalFileMoveBatch::$oldHash
protected

Definition at line 53 of file LocalFileMoveBatch.php.

◆ $oldName

string LocalFileMoveBatch::$oldName
protected

Definition at line 59 of file LocalFileMoveBatch.php.

Referenced by __construct(), and addOlds().

◆ $oldRel

string LocalFileMoveBatch::$oldRel
protected

Definition at line 65 of file LocalFileMoveBatch.php.

Referenced by addCurrent().

◆ $olds

LocalFileMoveBatch::$olds
protected

Definition at line 43 of file LocalFileMoveBatch.php.

◆ $target

Title LocalFileMoveBatch::$target
protected

Definition at line 39 of file LocalFileMoveBatch.php.

Referenced by __construct().


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