MediaWiki REL1_33
TempFSFile Class Reference

This class is used to hold the location and do limited manipulation of files stored temporarily (this will be whatever wfTempDir() returns) More...

Inheritance diagram for TempFSFile:
Collaboration diagram for TempFSFile:

Public Member Functions

 __construct ( $path)
 Sets up the file object.
 
 __destruct ()
 Cleans up after the temporary file by deleting it.
 
 autocollect ()
 Set flag clean up after the temporary file.
 
 bind ( $object)
 Clean up the temporary file only after an object goes out of scope.
 
 preserve ()
 Set flag to not clean up after the temporary file.
 
 purge ()
 Purge this file off the file system.
 
- Public Member Functions inherited from FSFile
 exists ()
 Checks if the file exists.
 
 getPath ()
 Returns the file system path.
 
 getProps ( $ext=true)
 Get an associative array containing information about a file with the given storage path.
 
 getSha1Base36 ( $recache=false)
 Get a SHA-1 hash of a file in the local filesystem, in base-36 lower case encoding, zero padded to 31 digits.
 
 getSize ()
 Get the file size in bytes.
 
 getTimestamp ()
 Get the file's last-modified timestamp.
 

Static Public Member Functions

static factory ( $prefix, $extension='', $tmpDirectory=null)
 Make a new temporary file on the file system.
 
static getUsableTempDirectory ()
 
static purgeAllOnShutdown ()
 Try to make sure that all files are purged on error.
 
- Static Public Member Functions inherited from FSFile
static extensionFromPath ( $path)
 Get the final file extension from a file system path.
 
static getPropsFromPath ( $path, $ext=true)
 Get an associative array containing information about a file in the local filesystem.
 
static getSha1Base36FromPath ( $path)
 Get a SHA-1 hash of a file in the local filesystem, in base-36 lower case encoding, zero padded to 31 digits.
 
static placeholderProps ()
 Placeholder file properties to use for files that don't exist.
 

Protected Attributes

bool $canDelete = false
 Garbage collect the temp file.
 
- Protected Attributes inherited from FSFile
string $path
 Path to file.
 
string $sha1Base36
 File SHA-1 in base 36.
 

Static Protected Attributes

static array $pathsCollect = null
 Map of (path => 1) for paths to delete on shutdown.
 

Detailed Description

This class is used to hold the location and do limited manipulation of files stored temporarily (this will be whatever wfTempDir() returns)

Definition at line 30 of file TempFSFile.php.

Constructor & Destructor Documentation

◆ __construct()

TempFSFile::__construct (   $path)

Sets up the file object.

Parameters
string$pathPath to temporary file on local disk

Reimplemented from FSFile.

Definition at line 37 of file TempFSFile.php.

References FSFile\$path.

◆ __destruct()

TempFSFile::__destruct ( )

Cleans up after the temporary file by deleting it.

Definition at line 191 of file TempFSFile.php.

References purge().

Member Function Documentation

◆ autocollect()

TempFSFile::autocollect ( )

Set flag clean up after the temporary file.

Returns
TempFSFile This object

Definition at line 167 of file TempFSFile.php.

References FSFile\$path.

◆ bind()

TempFSFile::bind (   $object)

Clean up the temporary file only after an object goes out of scope.

Parameters
object$object
Returns
TempFSFile This object

Definition at line 137 of file TempFSFile.php.

◆ factory()

static TempFSFile::factory (   $prefix,
  $extension = '',
  $tmpDirectory = null 
)
static

Make a new temporary file on the file system.

Temporary files may be purged when the file object falls out of scope.

Parameters
string$prefix
string$extensionOptional file extension
string | null$tmpDirectoryOptional parent directory
Returns
TempFSFile|null

Definition at line 55 of file TempFSFile.php.

References $ext, FSFile\$path, and getUsableTempDirectory().

Referenced by UploadFromChunks\concatenateChunks(), FSFileBackend\doCreateInternal(), FSFileBackend\doGetLocalCopyMulti(), MemoryFileBackend\doGetLocalCopyMulti(), SwiftFileBackend\doGetLocalCopyMulti(), FileBackendTest\doTestDoOperationsPipeline(), ApiImageRotate\execute(), FileBackendGroup\guessMimeInternal(), UploadFromUrl\makeTemporaryFile(), File\makeTransformTmpFile(), FileBackendTest\provider_testStore(), MysqlMaintenance\runMysql(), and MigrateFileRepoLayoutTest\setUp().

◆ getUsableTempDirectory()

static TempFSFile::getUsableTempDirectory ( )
static
Returns
string Filesystem path to a temporary directory
Exceptions
RuntimeException

Definition at line 85 of file TempFSFile.php.

References as.

Referenced by factory(), and wfTempDir().

◆ preserve()

TempFSFile::preserve ( )

Set flag to not clean up after the temporary file.

Returns
TempFSFile This object

Definition at line 154 of file TempFSFile.php.

◆ purge()

TempFSFile::purge ( )

Purge this file off the file system.

Returns
bool Success

Definition at line 120 of file TempFSFile.php.

Referenced by __destruct().

◆ purgeAllOnShutdown()

static TempFSFile::purgeAllOnShutdown ( )
static

Try to make sure that all files are purged on error.

This method should only be called internally

Definition at line 180 of file TempFSFile.php.

References FSFile\$path, and as.

Member Data Documentation

◆ $canDelete

bool TempFSFile::$canDelete = false
protected

Garbage collect the temp file.

Definition at line 32 of file TempFSFile.php.

◆ $pathsCollect

array TempFSFile::$pathsCollect = null
staticprotected

Map of (path => 1) for paths to delete on shutdown.

Definition at line 35 of file TempFSFile.php.


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