MediaWiki REL1_27
ExtensionRegistry Class Reference

ExtensionRegistry class. More...

Collaboration diagram for ExtensionRegistry:

Public Member Functions

 clearQueue ()
 Clear the current load queue.
 
 getAllThings ()
 Get information about all things.
 
 getAttribute ( $name)
 
 getQueue ()
 Get the current load queue.
 
 isLoaded ( $name)
 Whether a thing has been loaded.
 
 load ( $path)
 Loads and processes the given JSON file without delay.
 
 loadFromQueue ()
 
 queue ( $path)
 
 readFromQueue (array $queue)
 Process a queue of extensions and return their extracted data.
 

Static Public Member Functions

static getInstance ()
 

Public Attributes

const CACHE_VERSION = 4
 Bump whenever the registration cache needs resetting.
 
const MANIFEST_VERSION = 1
 Version of the highest supported manifest version.
 
const MEDIAWIKI_CORE = 'MediaWiki'
 "requires" key that applies to MediaWiki core/$wgVersion
 
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)
 
 markLoaded ( $name, array $credits)
 Mark a thing as loaded.
 
 processAutoLoader ( $dir, array $info)
 Register classes with the autoloader.
 

Protected Attributes

array $attributes = []
 Items in the JSON file that aren't being set as globals.
 
array $queued = []
 List of paths that should be loaded.
 

Private Attributes

array $loaded = []
 Array of loaded things, keyed by name, values are credits information.
 

Static Private Attributes

static ExtensionRegistry $instance
 

Detailed Description

ExtensionRegistry class.

The Registry loads JSON files, and uses a Processor to extract information from them. It also registers classes with the autoloader.

Since
1.25

Definition at line 12 of file ExtensionRegistry.php.

Member Function Documentation

◆ clearQueue()

ExtensionRegistry::clearQueue ( )

Clear the current load queue.

Not intended to be used outside of the installer.

Definition at line 154 of file ExtensionRegistry.php.

◆ exportExtractedData()

ExtensionRegistry::exportExtractedData ( array  $info)
protected

Definition at line 225 of file ExtensionRegistry.php.

References $GLOBALS, $name, $path, as, attributes, MERGE_STRATEGY, and wfArrayPlus2d().

Referenced by loadFromQueue().

◆ getAllThings()

ExtensionRegistry::getAllThings ( )

Get information about all things.

Returns
array

Definition at line 327 of file ExtensionRegistry.php.

References $loaded.

◆ getAttribute()

ExtensionRegistry::getAttribute (   $name)
Parameters
string$name
Returns
array

Definition at line 314 of file ExtensionRegistry.php.

References $name, and attributes.

◆ getInstance()

◆ getQueue()

ExtensionRegistry::getQueue ( )

Get the current load queue.

Not intended to be used outside of the installer.

Returns
array

Definition at line 146 of file ExtensionRegistry.php.

References $queued.

◆ isLoaded()

ExtensionRegistry::isLoaded (   $name)

Whether a thing has been loaded.

Parameters
string$name
Returns
bool

Definition at line 306 of file ExtensionRegistry.php.

References $name.

◆ load()

ExtensionRegistry::load (   $path)

Loads and processes the given JSON file without delay.

If some extensions are already queued, this will load those as well.

Parameters
string$pathAbsolute path to the JSON file

Definition at line 295 of file ExtensionRegistry.php.

References $path, loadFromQueue(), and queue().

◆ loadFromQueue()

ExtensionRegistry::loadFromQueue ( )

◆ markLoaded()

ExtensionRegistry::markLoaded (   $name,
array  $credits 
)
protected

Mark a thing as loaded.

Parameters
string$name
array$credits

Definition at line 337 of file ExtensionRegistry.php.

References $name.

◆ processAutoLoader()

ExtensionRegistry::processAutoLoader (   $dir,
array  $info 
)
protected

Register classes with the autoloader.

Parameters
string$dir
array$info
Returns
array

Definition at line 348 of file ExtensionRegistry.php.

References $dir, and use.

Referenced by readFromQueue().

◆ queue()

ExtensionRegistry::queue (   $path)
Parameters
string$pathAbsolute path to the JSON file

Definition at line 82 of file ExtensionRegistry.php.

References $path, $wgExtensionInfoMTime, and global.

Referenced by load().

◆ readFromQueue()

ExtensionRegistry::readFromQueue ( array  $queue)

Process a queue of extensions and return their extracted data.

Parameters
array$queuekeys are filenames, values are ignored
Returns
array extracted info
Exceptions
Exception

Definition at line 165 of file ExtensionRegistry.php.

References $GLOBALS, $path, $queue, $version, $wgVersion, as, global, MEDIAWIKI_CORE, and processAutoLoader().

Referenced by loadFromQueue().

Member Data Documentation

◆ $attributes

array ExtensionRegistry::$attributes = []
protected

Items in the JSON file that aren't being set as globals.

Definition at line 61 of file ExtensionRegistry.php.

◆ $instance

ExtensionRegistry ExtensionRegistry::$instance
staticprivate

Definition at line 66 of file ExtensionRegistry.php.

Referenced by getInstance().

◆ $loaded

array ExtensionRegistry::$loaded = []
private

Array of loaded things, keyed by name, values are credits information.

Definition at line 46 of file ExtensionRegistry.php.

Referenced by getAllThings().

◆ $queued

array ExtensionRegistry::$queued = []
protected

List of paths that should be loaded.

Definition at line 53 of file ExtensionRegistry.php.

Referenced by getQueue().

◆ CACHE_VERSION

const ExtensionRegistry::CACHE_VERSION = 4

Bump whenever the registration cache needs resetting.

Definition at line 32 of file ExtensionRegistry.php.

Referenced by loadFromQueue().

◆ MANIFEST_VERSION

const ExtensionRegistry::MANIFEST_VERSION = 1

Version of the highest supported manifest version.

Definition at line 22 of file ExtensionRegistry.php.

Referenced by ConvertExtensionToRegistration\execute(), ValidateRegistrationFile\execute(), and ExtensionJsonValidationTest\testPassesValidation().

◆ MEDIAWIKI_CORE

const ExtensionRegistry::MEDIAWIKI_CORE = 'MediaWiki'

"requires" key that applies to MediaWiki core/$wgVersion

Definition at line 17 of file ExtensionRegistry.php.

Referenced by ExtensionProcessor\getRequirements(), and readFromQueue().

◆ MERGE_STRATEGY

const ExtensionRegistry::MERGE_STRATEGY = '_merge_strategy'

◆ OLDEST_MANIFEST_VERSION

const ExtensionRegistry::OLDEST_MANIFEST_VERSION = 1

Version of the oldest supported manifest version.

Definition at line 27 of file ExtensionRegistry.php.

Referenced by ValidateRegistrationFile\execute(), and ExtensionJsonValidationTest\testPassesValidation().


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