MediaWiki REL1_37
|
Prioritized list of file repositories. More...
Public Member Functions | |
__construct ( $localInfo, $foreignInfo, WANObjectCache $wanCache, MimeAnalyzer $mimeAnalyzer) | |
Construct a group of file repositories. | |
checkRedirect ( $title) | |
Interface for FileRepo::checkRedirect() | |
clearCache ( $title=null) | |
Clear RepoGroup process cache used for finding a file. | |
findBySha1 ( $hash) | |
Find all instances of files with this key. | |
findBySha1s (array $hashes) | |
Find all instances of files with this keys. | |
findFile ( $title, $options=[]) | |
Search repositories for an image. | |
findFileFromKey ( $hash, $options=[]) | |
Find an instance of the file with this key, created at the specified time Returns false if the file does not exist. | |
findFiles (array $inputItems, $flags=0) | |
Search repositories for many files at once. | |
forEachForeignRepo ( $callback, $params=[]) | |
Call a function for each foreign repo, with the repo object as the first parameter. | |
getFileProps ( $fileName) | |
getLocalRepo () | |
Get the local repository, i.e. | |
getRepo ( $index) | |
Get the repo instance with a given key. | |
getRepoByName ( $name) | |
Get the repo instance by its name. | |
hasForeignRepos () | |
Does the installation have any foreign repos set up? | |
initialiseRepos () | |
Initialise the $repos array. | |
newCustomLocalRepo ( $info=[]) | |
Create a local repo with the specified option overrides. | |
Static Public Member Functions | |
static | destroySingleton () |
static | setSingleton ( $instance) |
static | singleton () |
Protected Member Functions | |
newRepo ( $info) | |
Create a repo class based on an info structure. | |
Protected Attributes | |
MapCacheLRU | $cache |
array | $foreignInfo |
FileRepo[] | $foreignRepos |
array | $localInfo |
LocalRepo | $localRepo |
bool | $reposInitialised = false |
WANObjectCache | $wanCache |
Private Member Functions | |
splitVirtualUrl ( $url) | |
Split a virtual URL into repo, zone and rel parts. | |
Private Attributes | |
MimeAnalyzer | $mimeAnalyzer |
const | MAX_CACHE_SIZE = 500 |
Maximum number of cache items. | |
Prioritized list of file repositories.
Definition at line 33 of file RepoGroup.php.
RepoGroup::__construct | ( | $localInfo, | |
$foreignInfo, | |||
WANObjectCache | $wanCache, | ||
MimeAnalyzer | $mimeAnalyzer | ||
) |
Construct a group of file repositories.
Do not call this – use MediaWikiServices::getRepoGroup.
array | $localInfo | Associative array for local repo's info |
array | $foreignInfo | Array of repository info arrays. Each info array is an associative array with the 'class' member giving the class name. The entire array is passed to the repository constructor as the first parameter. |
WANObjectCache | $wanCache | |
MimeAnalyzer | $mimeAnalyzer |
Definition at line 111 of file RepoGroup.php.
RepoGroup::checkRedirect | ( | $title | ) |
Interface for FileRepo::checkRedirect()
PageIdentity | LinkTarget | string | $title |
Definition at line 250 of file RepoGroup.php.
References $title, and initialiseRepos().
RepoGroup::clearCache | ( | $title = null | ) |
Clear RepoGroup process cache used for finding a file.
PageIdentity | string | null | $title | File page or file name, or null to clear all files |
Definition at line 500 of file RepoGroup.php.
References $title.
|
static |
Definition at line 77 of file RepoGroup.php.
References wfDeprecated().
RepoGroup::findBySha1 | ( | $hash | ) |
Find all instances of files with this key.
string | $hash | Base 36 SHA-1 hash |
Definition at line 304 of file RepoGroup.php.
References initialiseRepos().
RepoGroup::findBySha1s | ( | array | $hashes | ) |
Find all instances of files with this keys.
string[] | $hashes | Base 36 SHA-1 hashes |
Definition at line 324 of file RepoGroup.php.
References $hashes, and initialiseRepos().
RepoGroup::findFile | ( | $title, | |
$options = [] |
|||
) |
Search repositories for an image.
PageIdentity | LinkTarget | string | $title | The file to find |
array | $options | Associative array of options: time: requested time for an archived image, or false for the current version. An image object will be returned which was created at the specified time. ignoreRedirect: If true, do not follow file redirects private: If Authority object, return restricted (deleted) files if the performer is allowed to view them. Otherwise, such files will not be found. Authority is only accepted since 1.37, User was required before. latest: If true, load from the latest available data into File objects @phpcs:ignore Generic.Files.LineLength |
Definition at line 142 of file RepoGroup.php.
References $title, and initialiseRepos().
RepoGroup::findFileFromKey | ( | $hash, | |
$options = [] |
|||
) |
Find an instance of the file with this key, created at the specified time Returns false if the file does not exist.
string | $hash | Base 36 SHA-1 hash |
array | $options | Option array, same as findFile() |
Definition at line 280 of file RepoGroup.php.
References $file, and initialiseRepos().
RepoGroup::findFiles | ( | array | $inputItems, |
$flags = 0 |
|||
) |
Search repositories for many files at once.
array | $inputItems | An array of titles, or an array of findFile() options with the "title" option giving the title. Example: |
$findItem = [ 'title' => $title, 'private' => true ]; $findBatch = [ $findItem ]; $repo->findFiles( $findBatch );
No title should appear in $items twice, as the result use titles as keys
int | $flags | Supports:
|
Definition at line 215 of file RepoGroup.php.
References initialiseRepos().
RepoGroup::forEachForeignRepo | ( | $callback, | |
$params = [] |
|||
) |
Call a function for each foreign repo, with the repo object as the first parameter.
callable | $callback | The function to call |
array | $params | Optional additional parameters to pass to the function |
Definition at line 393 of file RepoGroup.php.
References initialiseRepos().
RepoGroup::getFileProps | ( | $fileName | ) |
string | $fileName |
Definition at line 480 of file RepoGroup.php.
References getRepo(), FileRepo\isVirtualUrl(), and splitVirtualUrl().
RepoGroup::getLocalRepo | ( | ) |
Get the local repository, i.e.
the one corresponding to the local image table. Files are typically uploaded to the local repository.
Definition at line 380 of file RepoGroup.php.
References getRepo().
Referenced by ApiQueryAllImages\__construct(), ImageListPager\__construct(), SpecialUndelete\__construct(), and SpecialUploadStash\__construct().
RepoGroup::getRepo | ( | $index | ) |
Get the repo instance with a given key.
string | int | $index |
Definition at line 346 of file RepoGroup.php.
References initialiseRepos().
Referenced by getFileProps(), and getLocalRepo().
RepoGroup::getRepoByName | ( | $name | ) |
Get the repo instance by its name.
string | $name |
Definition at line 361 of file RepoGroup.php.
References initialiseRepos().
RepoGroup::hasForeignRepos | ( | ) |
Does the installation have any foreign repos set up?
Definition at line 410 of file RepoGroup.php.
References initialiseRepos().
RepoGroup::initialiseRepos | ( | ) |
Initialise the $repos array.
Definition at line 420 of file RepoGroup.php.
References newRepo().
Referenced by checkRedirect(), findBySha1(), findBySha1s(), findFile(), findFileFromKey(), findFiles(), forEachForeignRepo(), getRepo(), getRepoByName(), and hasForeignRepos().
RepoGroup::newCustomLocalRepo | ( | $info = [] | ) |
Create a local repo with the specified option overrides.
array | $info |
Definition at line 439 of file RepoGroup.php.
References newRepo().
|
protected |
Create a repo class based on an info structure.
array | $info |
Definition at line 449 of file RepoGroup.php.
Referenced by initialiseRepos(), and newCustomLocalRepo().
|
static |
RepoGroup | $instance |
Definition at line 88 of file RepoGroup.php.
References wfDeprecated().
|
static |
Definition at line 67 of file RepoGroup.php.
References wfDeprecated().
|
private |
Split a virtual URL into repo, zone and rel parts.
string | $url |
MWException |
Definition at line 463 of file RepoGroup.php.
Referenced by getFileProps().
|
protected |
Definition at line 53 of file RepoGroup.php.
|
protected |
Definition at line 50 of file RepoGroup.php.
|
protected |
Definition at line 38 of file RepoGroup.php.
|
protected |
Definition at line 47 of file RepoGroup.php.
|
protected |
Definition at line 35 of file RepoGroup.php.
|
private |
Definition at line 59 of file RepoGroup.php.
|
protected |
Definition at line 44 of file RepoGroup.php.
|
protected |
Definition at line 41 of file RepoGroup.php.
|
private |
Maximum number of cache items.
Definition at line 56 of file RepoGroup.php.