|
MediaWiki REL1_35
|
ExtensionRegistry class. More...

Public Member Functions | |
| clearQueue () | |
| Clear the current load queue. | |
| finish () | |
| After this is called, no more extensions can be loaded. | |
| getAllThings () | |
| Get credits information about all installed extensions and skins. | |
| getAttribute ( $name) | |
| getQueue () | |
| Get the current load queue. | |
| isLoaded ( $name, $constraint=' *') | |
| Whether a thing has been loaded. | |
| loadFromQueue () | |
| queue ( $path) | |
| readFromQueue (array $queue) | |
| Process a queue of extensions and return their extracted data. | |
| setAttributeForTest ( $name, array $value) | |
| Force override the value of an attribute during tests. | |
| setCheckDevRequires ( $check) | |
| setLoadTestClassesAndNamespaces ( $load) | |
| Controls if classes and namespaces defined under the keys TestAutoloadClasses and TestAutoloadNamespaces should be added to the autoloader. | |
Static Public Member Functions | |
| static | exportAutoloadClassesAndNamespaces ( $dir, $info, &$autoloadClasses=[], &$autoloadNamespaces=[]) |
| Export autoload classes and namespaces for a given directory and parsed JSON info file. | |
| static | exportTestAutoloadClassesAndNamespaces ( $dir, $info, &$autoloadClasses=[], &$autoloadNamespaces=[]) |
| Export test autoload classes and namespaces for a given directory and parsed JSON info file. | |
| static | getInstance () |
Public Attributes | |
| const | MANIFEST_VERSION = 2 |
| Version of the highest supported manifest version Note: Update MANIFEST_VERSION_MW_VERSION when changing this. | |
| const | MANIFEST_VERSION_MW_VERSION = '>= 1.29.0' |
| MediaWiki version constraint representing what the current highest MANIFEST_VERSION is supported in. | |
| const | MEDIAWIKI_CORE = 'MediaWiki' |
| "requires" key that applies to MediaWiki core | |
| const | MERGE_STRATEGY = '_merge_strategy' |
| Special key that defines the merge strategy. | |
| const | OLDEST_MANIFEST_VERSION = 1 |
| Version of the oldest supported manifest version. | |
Protected Member Functions | |
| exportExtractedData (array $info) | |
| getLazyLoadedAttribute ( $name) | |
| Get an attribute value that isn't cached by reading each extension.json file again. | |
| saveToCache (BagOStuff $cache, array $data) | |
| Save data in the cache. | |
Static Protected Member Functions | |
| static | processAutoLoader ( $dir, array $files) |
| Fully expand autoloader paths. | |
Protected Attributes | |
| array | $attributes = [] |
| Items in the JSON file that aren't being set as globals. | |
| bool | $checkDev = false |
| Whether to check dev-requires. | |
| array | $lazyAttributes = [] |
| Lazy-loaded attributes. | |
| bool | $loadTestClassesAndNamespaces = false |
| Whether test classes and namespaces should be added to the auto loader. | |
| array | $queued = [] |
| List of paths that should be loaded. | |
| array | $testAttributes = [] |
| Attributes for testing. | |
Private Member Functions | |
| buildVersionChecker () | |
| Queries information about the software environment and constructs an appropiate version checker. | |
| getAbilities () | |
| Get the list of abilities and their values. | |
| getCache () | |
| getVaryHash () | |
| Get the cache varying hash. | |
| invalidateProcessCache () | |
| Invalidate the cache of the vary hash and the lazy options. | |
| makeCacheKey (BagOStuff $cache, $component,... $extra) | |
Private Attributes | |
| bool | $finished = false |
| Whether we are done loading things. | |
| array[] | $loaded = [] |
| Array of loaded things, keyed by name, values are credits information. | |
| string null | $varyHash |
| The hash of cache-varying options, lazy-initialised. | |
| const | CACHE_EXPIRY = 60 * 60 * 24 |
| const | CACHE_VERSION = 7 |
| Bump whenever the registration cache needs resetting. | |
| const | LAZY_LOADED_ATTRIBUTES |
| Attributes that should be lazy-loaded. | |
Static Private Attributes | |
| static ExtensionRegistry | $instance |
ExtensionRegistry class.
The Registry loads JSON files, and uses a Processor to extract information from them. It also registers classes with the autoloader.
Definition at line 18 of file ExtensionRegistry.php.
|
private |
Queries information about the software environment and constructs an appropiate version checker.
Definition at line 338 of file ExtensionRegistry.php.
References MW_VERSION.
| ExtensionRegistry::clearQueue | ( | ) |
Clear the current load queue.
Not intended to be used outside of the installer.
Definition at line 309 of file ExtensionRegistry.php.
|
static |
Export autoload classes and namespaces for a given directory and parsed JSON info file.
| string | $dir | |
| array | $info | |
| array | &$autoloadClasses | |
| array | &$autoloadNamespaces |
Definition at line 453 of file ExtensionRegistry.php.
References $GLOBALS, and AutoLoader\$psr4Namespaces.
|
protected |
Definition at line 491 of file ExtensionRegistry.php.
References $GLOBALS, $path, AutoLoader\$psr4Namespaces, and wfArrayPlus2d().
|
static |
Export test autoload classes and namespaces for a given directory and parsed JSON info file.
| string | $dir | |
| array | $info | |
| array | &$autoloadClasses | |
| array | &$autoloadNamespaces |
Definition at line 477 of file ExtensionRegistry.php.
References $GLOBALS, and AutoLoader\$psr4Namespaces.
| ExtensionRegistry::finish | ( | ) |
After this is called, no more extensions can be loaded.
Definition at line 319 of file ExtensionRegistry.php.
|
private |
Get the list of abilities and their values.
Definition at line 327 of file ExtensionRegistry.php.
| ExtensionRegistry::getAllThings | ( | ) |
Get credits information about all installed extensions and skins.
Definition at line 687 of file ExtensionRegistry.php.
| ExtensionRegistry::getAttribute | ( | $name | ) |
|
private |
Definition at line 193 of file ExtensionRegistry.php.
|
static |
Definition at line 143 of file ExtensionRegistry.php.
|
protected |
Get an attribute value that isn't cached by reading each extension.json file again.
| string | $name |
Definition at line 627 of file ExtensionRegistry.php.
References $cache.
| ExtensionRegistry::getQueue | ( | ) |
Get the current load queue.
Not intended to be used outside of the installer.
Definition at line 301 of file ExtensionRegistry.php.
|
private |
Get the cache varying hash.
Definition at line 213 of file ExtensionRegistry.php.
References MW_VERSION.
|
private |
Invalidate the cache of the vary hash and the lazy options.
Definition at line 232 of file ExtensionRegistry.php.
Referenced by queue(), and setCheckDevRequires().
| ExtensionRegistry::isLoaded | ( | $name, | |
$constraint = '*' |
|||
| ) |
Whether a thing has been loaded.
| string | $name | |
| string | $constraint | The required version constraint for this dependency |
| LogicException | if a specific contraint is asked for, but the extension isn't versioned |
Definition at line 590 of file ExtensionRegistry.php.
| ExtensionRegistry::loadFromQueue | ( | ) |
| MWException | If the queue is already marked as finished (no further things should be loaded then). |
Definition at line 241 of file ExtensionRegistry.php.
References $cache.
|
private |
Definition at line 199 of file ExtensionRegistry.php.
References $cache.
|
staticprotected |
Fully expand autoloader paths.
| string | $dir | |
| array | $files |
Definition at line 698 of file ExtensionRegistry.php.
References $file.
| ExtensionRegistry::queue | ( | $path | ) |
| string | $path | Absolute path to the JSON file |
Definition at line 174 of file ExtensionRegistry.php.
References $path, $wgExtensionInfoMTime, and invalidateProcessCache().
| ExtensionRegistry::readFromQueue | ( | array | $queue | ) |
Process a queue of extensions and return their extracted data.
| array | $queue | keys are filenames, values are ignored |
| Exception | |
| ExtensionDependencyError |
Definition at line 362 of file ExtensionRegistry.php.
References $path, $queue, and wfDeprecatedMsg().
|
protected |
Save data in the cache.
| BagOStuff | $cache | |
| array | $data |
Definition at line 270 of file ExtensionRegistry.php.
References $cache, and $wgDevelopmentWarnings.
| ExtensionRegistry::setAttributeForTest | ( | $name, | |
| array | $value | ||
| ) |
Force override the value of an attribute during tests.
| string | $name | Name of attribute to override |
| array | $value | Value to set |
Definition at line 667 of file ExtensionRegistry.php.
| ExtensionRegistry::setCheckDevRequires | ( | $check | ) |
| bool | $check |
Definition at line 155 of file ExtensionRegistry.php.
References invalidateProcessCache().
| ExtensionRegistry::setLoadTestClassesAndNamespaces | ( | $load | ) |
Controls if classes and namespaces defined under the keys TestAutoloadClasses and TestAutoloadNamespaces should be added to the autoloader.
| bool | $load |
Definition at line 167 of file ExtensionRegistry.php.
|
protected |
Items in the JSON file that aren't being set as globals.
Definition at line 97 of file ExtensionRegistry.php.
|
protected |
Whether to check dev-requires.
Definition at line 125 of file ExtensionRegistry.php.
|
private |
Whether we are done loading things.
Definition at line 89 of file ExtensionRegistry.php.
|
staticprivate |
Definition at line 137 of file ExtensionRegistry.php.
|
protected |
Lazy-loaded attributes.
Definition at line 111 of file ExtensionRegistry.php.
|
private |
Array of loaded things, keyed by name, values are credits information.
The keys that the credit info arrays may have is defined by ExtensionProcessor::CREDIT_ATTRIBS (plus a 'path' key that points to the skin or extension JSON file).
This info may be accessed via via ExtensionRegistry::getAllThings.
Definition at line 75 of file ExtensionRegistry.php.
|
protected |
Whether test classes and namespaces should be added to the auto loader.
Definition at line 132 of file ExtensionRegistry.php.
|
protected |
List of paths that should be loaded.
Definition at line 82 of file ExtensionRegistry.php.
|
protected |
Attributes for testing.
Definition at line 104 of file ExtensionRegistry.php.
|
private |
The hash of cache-varying options, lazy-initialised.
Definition at line 118 of file ExtensionRegistry.php.
|
private |
Definition at line 47 of file ExtensionRegistry.php.
|
private |
Bump whenever the registration cache needs resetting.
Definition at line 45 of file ExtensionRegistry.php.
|
private |
Attributes that should be lazy-loaded.
Definition at line 59 of file ExtensionRegistry.php.
| const ExtensionRegistry::MANIFEST_VERSION = 2 |
Version of the highest supported manifest version Note: Update MANIFEST_VERSION_MW_VERSION when changing this.
Definition at line 29 of file ExtensionRegistry.php.
| const ExtensionRegistry::MANIFEST_VERSION_MW_VERSION = '>= 1.29.0' |
MediaWiki version constraint representing what the current highest MANIFEST_VERSION is supported in.
Definition at line 35 of file ExtensionRegistry.php.
| const ExtensionRegistry::MEDIAWIKI_CORE = 'MediaWiki' |
"requires" key that applies to MediaWiki core
Definition at line 23 of file ExtensionRegistry.php.
| const ExtensionRegistry::MERGE_STRATEGY = '_merge_strategy' |
Special key that defines the merge strategy.
Definition at line 54 of file ExtensionRegistry.php.
| const ExtensionRegistry::OLDEST_MANIFEST_VERSION = 1 |
Version of the oldest supported manifest version.
Definition at line 40 of file ExtensionRegistry.php.