MediaWiki  1.30.0
MediaWikiGadgetsDefinitionRepo Class Reference

Gadgets repo powered by MediaWiki:Gadgets-definition. More...

Inheritance diagram for MediaWikiGadgetsDefinitionRepo:
Collaboration diagram for MediaWikiGadgetsDefinitionRepo:

Public Member Functions

 fetchStructuredList ( $forceNewText=null)
 Fetch list of gadgets and returns it as associative array of sections with gadgets e.g. More...
 
 getGadget ( $id)
 Get the Gadget object for a given gadget id. More...
 
 getGadgetIds ()
 Get the ids of the gadgets provided by this repository. More...
 
 newFromDefinition ( $definition, $category)
 Creates an instance of this class from definition in MediaWiki:Gadgets-definition. More...
 
 purgeDefinitionCache ()
 Purge the definitions cache, for example if MediaWiki:Gadgets-definition was edited. More...
 
- Public Member Functions inherited from GadgetRepo
 getStructuredList ()
 Get a list of gadgets sorted by category. More...
 

Public Attributes

const CACHE_VERSION = 2
 

Protected Member Functions

 loadGadgets ()
 Loads list of gadgets and returns it as associative array of sections with gadgets e.g. More...
 

Private Member Functions

 getCheckKey ()
 
 listFromDefinition ( $definition)
 Generates a structured list of Gadget objects from a definition. More...
 

Private Attributes

 $definitionCache
 

Additional Inherited Members

- Static Public Member Functions inherited from GadgetRepo
static setSingleton ( $repo=null)
 Should only be used by unit tests. More...
 
static singleton ()
 Get the configured default GadgetRepo. More...
 

Detailed Description

Gadgets repo powered by MediaWiki:Gadgets-definition.

Definition at line 8 of file MediaWikiGadgetsDefinitionRepo.php.

Member Function Documentation

◆ fetchStructuredList()

MediaWikiGadgetsDefinitionRepo::fetchStructuredList (   $forceNewText = null)

Fetch list of gadgets and returns it as associative array of sections with gadgets e.g.

[ $name => $gadget1, etc. ]

Parameters
string$forceNewTextInjected text of MediaWiki:gadgets-definition [optional]
Returns
array|bool

Definition at line 112 of file MediaWikiGadgetsDefinitionRepo.php.

References $rev, $source, $title, captcha-old\count, listFromDefinition(), Title\makeTitle(), Revision\newFromTitle(), NS_MEDIAWIKI, and wfDebug().

◆ getCheckKey()

MediaWikiGadgetsDefinitionRepo::getCheckKey ( )
private

◆ getGadget()

MediaWikiGadgetsDefinitionRepo::getGadget (   $id)

Get the Gadget object for a given gadget id.

Parameters
string$id
Exceptions
InvalidArgumentException
Returns
Gadget

Reimplemented from GadgetRepo.

Definition at line 13 of file MediaWikiGadgetsDefinitionRepo.php.

References loadGadgets().

◆ getGadgetIds()

MediaWikiGadgetsDefinitionRepo::getGadgetIds ( )

Get the ids of the gadgets provided by this repository.

It's possible this could be out of sync with what getGadget() will return due to caching

Returns
string[]

Reimplemented from GadgetRepo.

Definition at line 22 of file MediaWikiGadgetsDefinitionRepo.php.

References loadGadgets().

◆ listFromDefinition()

MediaWikiGadgetsDefinitionRepo::listFromDefinition (   $definition)
private

Generates a structured list of Gadget objects from a definition.

Parameters
string$definition
Returns
Gadget[] List of Gadget objects indexed by the gadget's name.

Definition at line 143 of file MediaWikiGadgetsDefinitionRepo.php.

References $line, $lines, $section, as, and newFromDefinition().

Referenced by fetchStructuredList().

◆ loadGadgets()

MediaWikiGadgetsDefinitionRepo::loadGadgets ( )
protected

Loads list of gadgets and returns it as associative array of sections with gadgets e.g.

[ 'sectionnname1' => [ $gadget1, $gadget2 ], 'sectionnname2' => [ $gadget3 ] ];

Returns
array|bool Gadget array or false on failure

Definition at line 50 of file MediaWikiGadgetsDefinitionRepo.php.

References $definitionCache, $value, Gadget\CACHE_TTL, DB_REPLICA, getCheckKey(), ObjectCache\getLocalServerInstance(), WANObjectCache\HOLDOFF_TTL, WANObjectCache\TTL_UNCACHEABLE, use, and wfGetDB().

Referenced by getGadget(), and getGadgetIds().

◆ newFromDefinition()

MediaWikiGadgetsDefinitionRepo::newFromDefinition (   $definition,
  $category 
)

Creates an instance of this class from definition in MediaWiki:Gadgets-definition.

Parameters
string$definitionGadget definition
string$category
Returns
Gadget|bool Instance of Gadget class or false if $definition is invalid

Definition at line 171 of file MediaWikiGadgetsDefinitionRepo.php.

References $options, $params, as, and Gadget\isValidGadgetID().

Referenced by listFromDefinition().

◆ purgeDefinitionCache()

MediaWikiGadgetsDefinitionRepo::purgeDefinitionCache ( )

Purge the definitions cache, for example if MediaWiki:Gadgets-definition was edited.

Definition at line 35 of file MediaWikiGadgetsDefinitionRepo.php.

References $cache, and getCheckKey().

Member Data Documentation

◆ $definitionCache

MediaWikiGadgetsDefinitionRepo::$definitionCache
private

Definition at line 11 of file MediaWikiGadgetsDefinitionRepo.php.

Referenced by loadGadgets().

◆ CACHE_VERSION

const MediaWikiGadgetsDefinitionRepo::CACHE_VERSION = 2

Definition at line 9 of file MediaWikiGadgetsDefinitionRepo.php.


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