MediaWiki 1.41.2
MediaWiki\Config\ConfigFactory Class Reference

Factory class to create Config objects. More...

Inherits SalvageableService.

Collaboration diagram for MediaWiki\Config\ConfigFactory:

Public Member Functions

 getConfigNames ()
 
 makeConfig ( $name)
 Create a given Config using the registered callback for $name.
 
 register ( $name, $callback)
 Register a new config factory function.
 
 salvage (SalvageableService $other)
 Re-uses existing Cache objects from $other.
 

Static Public Member Functions

static getDefaultInstance ()
 

Protected Attributes

array $configs = []
 Config objects that have already been created name => Config object.
 
array $factoryFunctions = []
 Map of config name => callback.
 

Detailed Description

Factory class to create Config objects.

Since
1.23

Definition at line 37 of file ConfigFactory.php.

Member Function Documentation

◆ getConfigNames()

MediaWiki\Config\ConfigFactory::getConfigNames ( )
Returns
string[]

Definition at line 102 of file ConfigFactory.php.

◆ getDefaultInstance()

static MediaWiki\Config\ConfigFactory::getDefaultInstance ( )
static
Deprecated
since 1.27, use MediaWikiServices::getInstance()->getConfigFactory() instead. Emitting deprecation warnings since 1.41.
Returns
ConfigFactory

Definition at line 58 of file ConfigFactory.php.

References MediaWiki\MediaWikiServices\getInstance(), and wfDeprecated().

◆ makeConfig()

MediaWiki\Config\ConfigFactory::makeConfig ( $name)

Create a given Config using the registered callback for $name.

If an object was already created, the same Config object is returned.

Parameters
string$nameName of the extension/component you want a Config object for 'main' is used for core
Exceptions
ConfigExceptionIf a factory function isn't registered for $name
UnexpectedValueExceptionIf the factory function returns a non-Config object
Returns
Config

Definition at line 138 of file ConfigFactory.php.

◆ register()

MediaWiki\Config\ConfigFactory::register ( $name,
$callback )

Register a new config factory function.

Will override if it's already registered. Use "*" for $name to provide a fallback config for all unknown names.

Parameters
string$name
callable | Config$callbackA factory callback that takes this ConfigFactory as an argument and returns a Config instance, or an existing Config instance.
Exceptions
InvalidArgumentExceptionIf an invalid callback is provided

Definition at line 115 of file ConfigFactory.php.

◆ salvage()

MediaWiki\Config\ConfigFactory::salvage ( SalvageableService $other)

Re-uses existing Cache objects from $other.

Cache objects are only re-used if the registered factory function for both is the same. Cache config is not copied, and only instances of caches defined on this instance with the same config are copied.

See also
SalvageableService::salvage()
Parameters
SalvageableService$otherThe object to salvage state from. $other must have the exact same type as $this.

Definition at line 74 of file ConfigFactory.php.

Member Data Documentation

◆ $configs

array MediaWiki\Config\ConfigFactory::$configs = []
protected

Config objects that have already been created name => Config object.

Definition at line 50 of file ConfigFactory.php.

◆ $factoryFunctions

array MediaWiki\Config\ConfigFactory::$factoryFunctions = []
protected

Map of config name => callback.

Definition at line 43 of file ConfigFactory.php.


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