Provides a combined registry over all in the attribute section registered things in extension.json files.
This code is meant to be executed within the MediaWiki application context. No standalone usage is intended.
Add "mwstake/mediawiki-component-manifestregistry": "~2.0" to the require section of your composer.json file.
Since 2.0 explicit initialization is required. This can be archived by
- either adding
"callback": "mwsInitComponents"to yourextension.json/skin.json - or calling
mwsInitComponents();within you extensions/skins customcallbackmethod
See also mwstake/mediawiki-componentloader.
{
"attributes": {
"BlueSpiceFoundation": {
"RoleRegistry": {
"admin": "\\BlueSpice\\Permission\\Role\\Admin::factory",
"editor": "\\BlueSpice\\Permission\\Role\\Editor::factory",
"reader": "\\BlueSpice\\Permission\\Role\\Reader::factory",
"author": "\\BlueSpice\\Permission\\Role\\Author::factory",
"reviewer": "\\BlueSpice\\Permission\\Role\\Reviewer::factory",
"accountmanager": "\\BlueSpice\\Permission\\Role\\AccountManager::factory"
}
},
"BlueSpicePrivacy": {
"CookieConsentNativeMWCookies": {
"notificationFlag": {
"group": "necessary",
"addPrefix": true
}
}
}
},
"manifest_version": 2,
}$factory = \MediaWiki\MediaWikiServices::getInstance()->getService( 'MWStakeManifestRegistryFactory' );
$registry = $factory->get( 'MyExtensionMyRegistry' );
$myValues = $registry->get( 'subValue' );
$allMyValues = $registry->getAll();mwsgManifestRegistryOverrides: Used to overwrite existing registries by either add, remove or merge their values:
Example 1:
$GLOBALS['mwsgManifestRegistryOverrides']['MyRegistry'] = [
'set' => [
'ReplaceKey' => 'with new value',
],
'merge' => [
'AddThisKey' => 'with this value',
],
'remove' => [ 'keyOfValueThatShouldBeRemoved' ]
]