MediaWiki  REL1_22
ApiModuleManager Class Reference

This class holds a list of modules and handles instantiation. More...

Inheritance diagram for ApiModuleManager:
Collaboration diagram for ApiModuleManager:

List of all members.

Public Member Functions

 __construct (ApiBase $parentModule)
 Construct new module manager.
 addModule ($name, $group, $class)
 Add or overwrite a module in this ApiMain instance.
 addModules (array $modules, $group)
 Add a list of modules to the manager.
 getGroups ()
 Get a list of groups this manager contains.
 getModule ($moduleName, $group=null, $ignoreCache=false)
 Get module instance by name, or instantiate it if it does not exist.
 getModuleGroup ($moduleName)
 Returns the group name for the given module.
 getNames ($group=null)
 Get an array of modules in a specific group or all if no group is set.
 getNamesWithClasses ($group=null)
 Create an array of (moduleName => moduleClass) for a specific group or for all.
 isDefined ($moduleName, $group=null)
 Returns true if the specific module is defined at all or in a specific group.

Private Attributes

 $mGroups = array()
 $mInstances = array()
 $mModules = array()
 $mParent

Detailed Description

This class holds a list of modules and handles instantiation.

Since:
1.21

Definition at line 34 of file ApiModuleManager.php.


Constructor & Destructor Documentation

Construct new module manager.

Parameters:
ApiBase$parentModuleParent module instance will be used during instantiation

Definition at line 45 of file ApiModuleManager.php.


Member Function Documentation

ApiModuleManager::addModule ( name,
group,
class 
)

Add or overwrite a module in this ApiMain instance.

Intended for use by extending classes who wish to add their own modules to their lexicon or override the behavior of inherent ones.

Parameters:
string$groupName of the module group
string$nameThe identifier for this module.
string$classThe class where this module is implemented.

Definition at line 69 of file ApiModuleManager.php.

References $name, and array().

Referenced by addModules().

ApiModuleManager::addModules ( array modules,
group 
)

Add a list of modules to the manager.

Parameters:
array$modulesA map of ModuleName => ModuleClass
string$groupWhich group modules belong to (action,format,...)

Definition at line 54 of file ApiModuleManager.php.

References $name, addModule(), and as.

Get a list of groups this manager contains.

Returns:
array

Definition at line 168 of file ApiModuleManager.php.

ApiModuleManager::getModule ( moduleName,
group = null,
ignoreCache = false 
)

Get module instance by name, or instantiate it if it does not exist.

Parameters:
string$moduleNamemodule name
string$groupoptionally validate that the module is in a specific group
bool$ignoreCacheif true, force-creates a new instance and does not cache it
Returns:
mixed the new module instance, or null if failed

Definition at line 81 of file ApiModuleManager.php.

Returns the group name for the given module.

Parameters:
string$moduleName
Returns:
string group name or null if missing

Definition at line 156 of file ApiModuleManager.php.

ApiModuleManager::getNames ( group = null)

Get an array of modules in a specific group or all if no group is set.

Parameters:
string$groupoptional group filter
Returns:
array list of module names

Definition at line 109 of file ApiModuleManager.php.

References $name, $result, array(), and as.

Create an array of (moduleName => moduleClass) for a specific group or for all.

Parameters:
string$groupname of the group to get or null for all
Returns:
array name=>class map

Definition at line 127 of file ApiModuleManager.php.

References $name, $result, array(), and as.

ApiModuleManager::isDefined ( moduleName,
group = null 
)

Returns true if the specific module is defined at all or in a specific group.

Parameters:
string$moduleNamemodule name
string$groupgroup name to check against, or null to check all groups,
Returns:
boolean true if defined

Definition at line 143 of file ApiModuleManager.php.


Member Data Documentation

ApiModuleManager::$mGroups = array() [private]

Definition at line 38 of file ApiModuleManager.php.

ApiModuleManager::$mInstances = array() [private]

Definition at line 37 of file ApiModuleManager.php.

ApiModuleManager::$mModules = array() [private]

Definition at line 39 of file ApiModuleManager.php.

ApiModuleManager::$mParent [private]

Definition at line 36 of file ApiModuleManager.php.


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