MediaWiki REL1_31
ArchivedFile Class Reference

Class representing a row of the 'filearchive' table. More...

Collaboration diagram for ArchivedFile:

Public Member Functions

 __construct ( $title, $id=0, $key='', $sha1='')
 
 exists ()
 
 getBits ()
 Return the bits of the image file, in bytes.
 
 getDescription ()
 Return upload description.
 
 getGroup ()
 Return the FileStore storage group.
 
 getHandler ()
 Get a MediaHandler instance for this file.
 
 getHeight ()
 Return the height of the image.
 
 getID ()
 
 getKey ()
 Return the FileStore key.
 
 getMediaType ()
 Return the type of the media in the file.
 
 getMetadata ()
 Get handler-specific metadata.
 
 getMimeType ()
 Returns the MIME type of the file.
 
 getName ()
 Return the file name.
 
 getRawDescription ()
 Return upload description.
 
 getRawUser ()
 Return the user ID of the uploader.
 
 getRawUserText ()
 Return the user name of the uploader.
 
 getSha1 ()
 Get the SHA-1 base 36 hash of the file.
 
 getSize ()
 Return the size of the image file, in bytes.
 
 getStorageKey ()
 Return the FileStore key (overriding base File class)
 
 getTimestamp ()
 Return upload timestamp.
 
 getTitle ()
 Return the associated title object.
 
 getUser ( $type='text')
 Returns ID or name of user who uploaded the file.
 
 getVisibility ()
 Returns the deletion bitfield.
 
 getWidth ()
 Return the width of the image.
 
 isDeleted ( $field)
 for file or revision rows
 
 load ()
 Loads a file object from the filearchive table.
 
 loadFromRow ( $row)
 Load ArchivedFile object fields from a DB row.
 
 pageCount ()
 Returns the number of pages of a multipage document, or false for documents which aren't multipage documents.
 
 userCan ( $field, User $user=null)
 Determine if the current user is allowed to view a particular field of this FileStore image file, if it's marked as deleted.
 

Static Public Member Functions

static getQueryInfo ()
 Return the tables, fields, and join conditions to be selected to create a new archivedfile object.
 
static newFromRow ( $row)
 Loads a file object from the filearchive table.
 
static selectFields ()
 Fields in the filearchive table.
 

Protected Attributes

MediaHandler $handler
 
Title $title
 

Private Attributes

string $archive_name
 Original base filename.
 
int $bits
 Size in bytes.
 
bool $dataLoaded
 Whether or not all this has been loaded from the database (loadFromXxx)
 
int $deleted
 Bitfield akin to rev_deleted.
 
string $description
 Upload description.
 
string $group
 FileStore storage group.
 
int $height
 Height.
 
int $id
 Filearchive row ID.
 
string $key
 FileStore SHA-1 key.
 
string $media_type
 Media type.
 
string $metadata
 Metadata string.
 
string $mime
 MIME type.
 
string $name
 File name.
 
int false $pageCount
 Number of pages of a multipage document, or false for documents which aren't multipage documents.
 
string $sha1
 SHA-1 hash of file content.
 
int $size
 File size in bytes.
 
string $timestamp
 Time of upload.
 
User null $user
 Uploader.
 
int $width
 Width.
 

Detailed Description

Class representing a row of the 'filearchive' table.

Definition at line 29 of file ArchivedFile.php.

Constructor & Destructor Documentation

◆ __construct()

ArchivedFile::__construct (   $title,
  $id = 0,
  $key = '',
  $sha1 = '' 
)
Exceptions
MWException
Parameters
Title$title
int$id
string$key
string$sha1

Definition at line 102 of file ArchivedFile.php.

References $id, $key, $sha1, $title, exists(), Title\getDBkey(), key, name, File\normalizeTitle(), title, user, and width.

Member Function Documentation

◆ exists()

ArchivedFile::exists ( )
Returns
bool

Definition at line 367 of file ArchivedFile.php.

References load().

Referenced by __construct(), and load().

◆ getBits()

ArchivedFile::getBits ( )

Return the bits of the image file, in bytes.

Returns
int

Definition at line 443 of file ArchivedFile.php.

References $bits, and load().

◆ getDescription()

ArchivedFile::getDescription ( )

Return upload description.

Returns
string|int

Definition at line 553 of file ArchivedFile.php.

References $description, File\DELETED_COMMENT, isDeleted(), and load().

◆ getGroup()

ArchivedFile::getGroup ( )

Return the FileStore storage group.

Returns
string

Definition at line 395 of file ArchivedFile.php.

References $group.

◆ getHandler()

ArchivedFile::getHandler ( )

Get a MediaHandler instance for this file.

Returns
MediaHandler

Definition at line 463 of file ArchivedFile.php.

References $handler, MediaHandler\getHandler(), getMimeType(), and handler.

Referenced by pageCount().

◆ getHeight()

ArchivedFile::getHeight ( )

Return the height of the image.

Returns
int

Definition at line 413 of file ArchivedFile.php.

References $height, and load().

◆ getID()

ArchivedFile::getID ( )
Returns
int

Definition at line 358 of file ArchivedFile.php.

References $id, and load().

◆ getKey()

ArchivedFile::getKey ( )

Return the FileStore key.

Returns
string

Definition at line 377 of file ArchivedFile.php.

References $key, and load().

Referenced by getStorageKey().

◆ getMediaType()

ArchivedFile::getMediaType ( )

Return the type of the media in the file.

Use the value returned by this function with the MEDIATYPE_xxx constants.

Returns
string

Definition at line 494 of file ArchivedFile.php.

References $media_type, and load().

◆ getMetadata()

ArchivedFile::getMetadata ( )

Get handler-specific metadata.

Returns
string

Definition at line 423 of file ArchivedFile.php.

References $metadata, and load().

◆ getMimeType()

ArchivedFile::getMimeType ( )

Returns the MIME type of the file.

Returns
string

Definition at line 453 of file ArchivedFile.php.

References $mime, and load().

Referenced by getHandler().

◆ getName()

ArchivedFile::getName ( )

Return the file name.

Returns
string

Definition at line 347 of file ArchivedFile.php.

References $name, load(), and name.

Referenced by EraseArchivedFile\scrubVersion().

◆ getQueryInfo()

static ArchivedFile::getQueryInfo ( )
static

Return the tables, fields, and join conditions to be selected to create a new archivedfile object.

Since
1.31
Returns
array[] With three keys:
  • tables: (string[]) to include in the $table to IDatabase->select()
  • fields: (string[]) to include in the $vars to IDatabase->select()
  • joins: (array) to include in the $join_conds to IDatabase->select()

Definition at line 266 of file ArchivedFile.php.

Referenced by RevDelArchivedFileList\doQuery(), ApiQueryFilearchive\execute(), LocalFileRestoreBatch\execute(), EraseArchivedFile\execute(), PageArchive\listFiles(), load(), and EraseArchivedFile\scrubAllVersions().

◆ getRawDescription()

ArchivedFile::getRawDescription ( )

Return upload description.

Returns
string

Definition at line 585 of file ArchivedFile.php.

References $description, and load().

◆ getRawUser()

ArchivedFile::getRawUser ( )

Return the user ID of the uploader.

Returns
int

Definition at line 567 of file ArchivedFile.php.

References getUser().

◆ getRawUserText()

ArchivedFile::getRawUserText ( )

Return the user name of the uploader.

Returns
string

Definition at line 576 of file ArchivedFile.php.

References getUser().

◆ getSha1()

ArchivedFile::getSha1 ( )

Get the SHA-1 base 36 hash of the file.

Returns
string
Since
1.21

Definition at line 517 of file ArchivedFile.php.

References $sha1, and load().

◆ getSize()

ArchivedFile::getSize ( )

Return the size of the image file, in bytes.

Returns
int

Definition at line 433 of file ArchivedFile.php.

References $size, and load().

◆ getStorageKey()

ArchivedFile::getStorageKey ( )

Return the FileStore key (overriding base File class)

Returns
string

Definition at line 387 of file ArchivedFile.php.

References getKey().

Referenced by EraseArchivedFile\scrubVersion().

◆ getTimestamp()

ArchivedFile::getTimestamp ( )

Return upload timestamp.

Returns
string

Definition at line 505 of file ArchivedFile.php.

References load(), and wfTimestamp().

Referenced by EraseArchivedFile\scrubVersion().

◆ getTitle()

ArchivedFile::getTitle ( )

Return the associated title object.

Returns
Title

Definition at line 335 of file ArchivedFile.php.

References $title, load(), and title.

Referenced by userCan().

◆ getUser()

ArchivedFile::getUser (   $type = 'text')

Returns ID or name of user who uploaded the file.

Note
Prior to MediaWiki 1.23, this method always returned the user id, and was inconsistent with the rest of the file classes.
Parameters
string$type'text', 'id', or 'object'
Returns
int|string|User|null
Exceptions
MWException
Since
1.31 added 'object'

Definition at line 534 of file ArchivedFile.php.

References $type, $user, load(), and user.

Referenced by getRawUser(), and getRawUserText().

◆ getVisibility()

ArchivedFile::getVisibility ( )

Returns the deletion bitfield.

Returns
int

Definition at line 595 of file ArchivedFile.php.

References $deleted, and load().

◆ getWidth()

ArchivedFile::getWidth ( )

Return the width of the image.

Returns
int

Definition at line 403 of file ArchivedFile.php.

References $width, and load().

◆ isDeleted()

ArchivedFile::isDeleted (   $field)

for file or revision rows

Parameters
int$fieldOne of DELETED_* bitfield constants
Returns
bool

Definition at line 607 of file ArchivedFile.php.

References load().

Referenced by getDescription().

◆ load()

ArchivedFile::load ( )

Loads a file object from the filearchive table.

Exceptions
MWException
Returns
bool|null True on success or null

Definition at line 150 of file ArchivedFile.php.

References $dbr, $group, $id, $key, $sha1, DB_REPLICA, exists(), getQueryInfo(), key, loadFromRow(), NS_FILE, title, and wfGetDB().

Referenced by exists(), getBits(), getDescription(), getHeight(), getID(), getKey(), getMediaType(), getMetadata(), getMimeType(), getName(), getRawDescription(), getSha1(), getSize(), getTimestamp(), getTitle(), getUser(), getVisibility(), getWidth(), isDeleted(), and userCan().

◆ loadFromRow()

ArchivedFile::loadFromRow (   $row)

Load ArchivedFile object fields from a DB row.

Parameters
stdClass$rowObject database row
Since
1.21

Definition at line 300 of file ArchivedFile.php.

References DB_REPLICA, LocalRepo\getHashFromKey(), key, name, User\newFromAnyId(), NS_FILE, title, user, wfGetDB(), and width.

Referenced by load().

◆ newFromRow()

static ArchivedFile::newFromRow (   $row)
static

Loads a file object from the filearchive table.

Parameters
stdClass$row
Returns
ArchivedFile

Definition at line 207 of file ArchivedFile.php.

References NS_FILE.

Referenced by RevDelArchivedFileItem\__construct(), ApiQueryFilearchive\execute(), EraseArchivedFile\execute(), SpecialUndelete\formatFileRow(), and EraseArchivedFile\scrubAllVersions().

◆ pageCount()

ArchivedFile::pageCount ( )

Returns the number of pages of a multipage document, or false for documents which aren't multipage documents.

Returns
bool|int

Definition at line 476 of file ArchivedFile.php.

References $pageCount, getHandler(), handler, and pageCount().

Referenced by pageCount().

◆ selectFields()

static ArchivedFile::selectFields ( )
static

Fields in the filearchive table.

Deprecated:
since 1.31, use self::getQueryInfo() instead.
Returns
string[]

Definition at line 219 of file ArchivedFile.php.

References $wgActorTableSchemaMigrationStage, global, MIGRATION_OLD, MIGRATION_WRITE_BOTH, and wfDeprecated().

◆ userCan()

ArchivedFile::userCan (   $field,
User  $user = null 
)

Determine if the current user is allowed to view a particular field of this FileStore image file, if it's marked as deleted.

Parameters
int$field
null | User$userUser object to check, or null to use $wgUser
Returns
bool

Definition at line 620 of file ArchivedFile.php.

References $title, $user, getTitle(), and load().

Member Data Documentation

◆ $archive_name

string ArchivedFile::$archive_name
private

Original base filename.

Definition at line 87 of file ArchivedFile.php.

◆ $bits

int ArchivedFile::$bits
private

Size in bytes.

Definition at line 46 of file ArchivedFile.php.

Referenced by getBits().

◆ $dataLoaded

bool ArchivedFile::$dataLoaded
private

Whether or not all this has been loaded from the database (loadFromXxx)

Definition at line 73 of file ArchivedFile.php.

◆ $deleted

int ArchivedFile::$deleted
private

Bitfield akin to rev_deleted.

Definition at line 76 of file ArchivedFile.php.

Referenced by getVisibility().

◆ $description

string ArchivedFile::$description
private

Upload description.

Definition at line 64 of file ArchivedFile.php.

Referenced by getDescription(), and getRawDescription().

◆ $group

string ArchivedFile::$group
private

FileStore storage group.

Definition at line 37 of file ArchivedFile.php.

Referenced by getGroup(), and load().

◆ $handler

MediaHandler ArchivedFile::$handler
protected

Definition at line 90 of file ArchivedFile.php.

Referenced by getHandler().

◆ $height

int ArchivedFile::$height
private

Height.

Definition at line 52 of file ArchivedFile.php.

Referenced by getHeight().

◆ $id

int ArchivedFile::$id
private

Filearchive row ID.

Definition at line 31 of file ArchivedFile.php.

Referenced by __construct(), getID(), and load().

◆ $key

string ArchivedFile::$key
private

FileStore SHA-1 key.

Definition at line 40 of file ArchivedFile.php.

Referenced by __construct(), getKey(), and load().

◆ $media_type

string ArchivedFile::$media_type
private

Media type.

Definition at line 61 of file ArchivedFile.php.

Referenced by getMediaType().

◆ $metadata

string ArchivedFile::$metadata
private

Metadata string.

Definition at line 55 of file ArchivedFile.php.

Referenced by getMetadata().

◆ $mime

string ArchivedFile::$mime
private

MIME type.

Definition at line 58 of file ArchivedFile.php.

Referenced by getMimeType().

◆ $name

string ArchivedFile::$name
private

File name.

Definition at line 34 of file ArchivedFile.php.

Referenced by getName().

◆ $pageCount

int false ArchivedFile::$pageCount
private

Number of pages of a multipage document, or false for documents which aren't multipage documents.

Definition at line 84 of file ArchivedFile.php.

Referenced by pageCount().

◆ $sha1

string ArchivedFile::$sha1
private

SHA-1 hash of file content.

Definition at line 79 of file ArchivedFile.php.

Referenced by __construct(), getSha1(), and load().

◆ $size

int ArchivedFile::$size
private

File size in bytes.

Definition at line 43 of file ArchivedFile.php.

Referenced by getSize().

◆ $timestamp

string ArchivedFile::$timestamp
private

Time of upload.

Definition at line 70 of file ArchivedFile.php.

◆ $title

Title ArchivedFile::$title
protected

Definition at line 93 of file ArchivedFile.php.

Referenced by __construct(), getTitle(), and userCan().

◆ $user

User null ArchivedFile::$user
private

Uploader.

Definition at line 67 of file ArchivedFile.php.

Referenced by getUser(), and userCan().

◆ $width

int ArchivedFile::$width
private

Width.

Definition at line 49 of file ArchivedFile.php.

Referenced by getWidth().


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