use MediaWiki\Config\ConfigRepository;
use MediaWiki\Config\ServiceOptions;
use MediaWiki\FileBackend\FSFile\TempFSFileFactory;
+use MediaWiki\FileBackend\LockManager\LockManagerGroupFactory;
use MediaWiki\Http\HttpRequestFactory;
use MediaWiki\Interwiki\ClassicInterwikiLookup;
use MediaWiki\Interwiki\InterwikiLookup;
use MediaWiki\Storage\NameTableStoreFactory;
use MediaWiki\Storage\SqlBlobStore;
use MediaWiki\Storage\PageEditStash;
+use Wikimedia\ObjectFactory;
return [
'ActorMigration' => function ( MediaWikiServices $services ) : ActorMigration {
return \ObjectCache::newFromParams( $config->get( 'ObjectCaches' )[$cacheId] );
},
+ 'LockManagerGroupFactory' => function ( MediaWikiServices $services ) : LockManagerGroupFactory {
+ return new LockManagerGroupFactory(
+ WikiMap::getCurrentWikiDbDomain()->getId(),
+ $services->getMainConfig()->get( 'LockManagers' ),
+ $services->getDBLoadBalancerFactory()
+ );
+ },
+
'MagicWordFactory' => function ( MediaWikiServices $services ) : MagicWordFactory {
return new MagicWordFactory( $services->getContentLanguage() );
},
);
},
+ 'ObjectFactory' => function ( MediaWikiServices $services ) : ObjectFactory {
+ return new ObjectFactory( $services );
+ },
+
'OldRevisionImporter' => function ( MediaWikiServices $services ) : OldRevisionImporter {
return new ImportableOldRevisionImporter(
true,
},
'PermissionManager' => function ( MediaWikiServices $services ) : PermissionManager {
- $config = $services->getMainConfig();
return new PermissionManager(
+ new ServiceOptions(
+ PermissionManager::$constructorOptions, $services->getMainConfig()
+ ),
$services->getSpecialPageFactory(),
$services->getRevisionLookup(),
- $config->get( 'WhitelistRead' ),
- $config->get( 'WhitelistReadRegexp' ),
- $config->get( 'EmailConfirmToEdit' ),
- $config->get( 'BlockDisablesLogin' ),
- $config->get( 'GroupPermissions' ),
- $config->get( 'RevokePermissions' ),
- $config->get( 'AvailableRights' ),
$services->getNamespaceInfo()
);
},