MediaWiki REL1_27
ConfigFactory Class Reference

Factory class to create Config objects. More...

Public Member Functions

 makeConfig ( $name)
 Create a given Config using the registered callback for $name.
 
 register ( $name, $callback)
 Register a new config factory function Will override if it's already registered.
 

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 29 of file ConfigFactory.php.

Member Function Documentation

◆ getDefaultInstance()

◆ makeConfig()

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 76 of file ConfigFactory.php.

References $name.

◆ register()

ConfigFactory::register (   $name,
  $callback 
)

Register a new config factory function Will override if it's already registered.

Parameters
string$name
callable$callbackThat takes this ConfigFactory as an argument
Exceptions
InvalidArgumentExceptionIf an invalid callback is provided

Definition at line 60 of file ConfigFactory.php.

References $name.

Member Data Documentation

◆ $configs

array ConfigFactory::$configs = []
protected

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

Definition at line 42 of file ConfigFactory.php.

◆ $factoryFunctions

array ConfigFactory::$factoryFunctions = []
protected

Map of config name => callback.

Definition at line 35 of file ConfigFactory.php.


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