MediaWiki  REL1_24
SkinFactory Class Reference

Factory class to create Skin objects. More...

Collaboration diagram for SkinFactory:

List of all members.

Public Member Functions

 getSkinNames ()
 Returns an associative array of: skin name => human readable name.
 makeSkin ($name)
 Create a given Skin using the registered callback for $name.
 register ($name, $displayName, $callback)
 Register a new Skin factory function.

Static Public Member Functions

static getDefaultInstance ()

Private Member Functions

 getLegacySkin ($name)
 Get a legacy skin which uses the autodiscovery mechanism.
 getLegacySkinNames ()

Private Attributes

array $displayNames = array()
 Map of name => fallback human-readable name, used when the 'skinname-<skin>' message is not available.
array $factoryFunctions = array()
 Map of name => callback.
array $legacySkins = array()
 Map of name => class name without "Skin" prefix, for legacy skins using the autodiscovery mechanism.

Static Private Attributes

static $self

Detailed Description

Factory class to create Skin objects.

Since:
1.24

Definition at line 29 of file SkinFactory.php.


Member Function Documentation

SkinFactory::getLegacySkin ( name) [private]

Get a legacy skin which uses the autodiscovery mechanism.

Parameters:
string$name
Returns:
Skin|bool False if the skin couldn't be constructed

Definition at line 161 of file SkinFactory.php.

Returns:
array

Definition at line 85 of file SkinFactory.php.

Returns an associative array of: skin name => human readable name.

Returns:
array

Definition at line 148 of file SkinFactory.php.

SkinFactory::makeSkin ( name)

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

Parameters:
string$nameName of the skin you want
Exceptions:
SkinExceptionIf a factory function isn't registered for $name
UnexpectedValueExceptionIf the factory function returns a non-Skin object
Returns:
Skin

Definition at line 195 of file SkinFactory.php.

SkinFactory::register ( name,
displayName,
callback 
)

Register a new Skin factory function.

Will override if it's already registered.

Parameters:
string$nameInternal skin name. Should be all-lowercase (technically doesn't have to be, but doing so would change the case of i18n message keys).
string$displayNameFor backwards-compatibility with old skin loading system. This is the text used as skin's human-readable name when the 'skinname-<skin>' message is not available. It should be the same as the skin name provided in $wgExtensionCredits.
callable$callbackCallback that takes the skin name as an argument
Exceptions:
InvalidArgumentExceptionIf an invalid callback is provided

Definition at line 74 of file SkinFactory.php.


Member Data Documentation

array SkinFactory::$displayNames = array() [private]

Map of name => fallback human-readable name, used when the 'skinname-<skin>' message is not available.

Definition at line 40 of file SkinFactory.php.

array SkinFactory::$factoryFunctions = array() [private]

Map of name => callback.

Definition at line 34 of file SkinFactory.php.

array SkinFactory::$legacySkins = array() [private]

Map of name => class name without "Skin" prefix, for legacy skins using the autodiscovery mechanism.

Definition at line 46 of file SkinFactory.php.

SkinFactory::$self [static, private]

Definition at line 51 of file SkinFactory.php.


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