resourceloader: Remove Grade C sniffs for WebOS <=1.4 and SymbianOS
[lhc/web/wiklou.git] / includes / ServiceWiring.php
index bb6c2c2..1acd038 100644 (file)
 
 use Liuggio\StatsdClient\Factory\StatsdDataFactoryInterface;
 use MediaWiki\Auth\AuthManager;
+use MediaWiki\BadFileLookup;
 use MediaWiki\Block\BlockManager;
 use MediaWiki\Block\BlockRestrictionStore;
 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;
@@ -68,6 +71,7 @@ use MediaWiki\Storage\BlobStoreFactory;
 use MediaWiki\Storage\NameTableStoreFactory;
 use MediaWiki\Storage\SqlBlobStore;
 use MediaWiki\Storage\PageEditStash;
+use Wikimedia\ObjectFactory;
 
 return [
        'ActorMigration' => function ( MediaWikiServices $services ) : ActorMigration {
@@ -76,6 +80,17 @@ return [
                );
        },
 
+       'BadFileLookup' => function ( MediaWikiServices $services ) : BadFileLookup {
+               return new BadFileLookup(
+                       function () {
+                               return wfMessage( 'bad_image_list' )->inContentLanguage()->plain();
+                       },
+                       $services->getLocalServerObjectCache(),
+                       $services->getRepoGroup(),
+                       $services->getTitleParser()
+               );
+       },
+
        'BlobStore' => function ( MediaWikiServices $services ) : BlobStore {
                return $services->getService( '_SqlBlobStore' );
        },
@@ -98,7 +113,8 @@ return [
                                BlockManager::$constructorOptions, $services->getMainConfig()
                        ),
                        $context->getUser(),
-                       $context->getRequest()
+                       $context->getRequest(),
+                       $services->getPermissionManager()
                );
        },
 
@@ -268,9 +284,18 @@ return [
        },
 
        'LocalServerObjectCache' => function ( MediaWikiServices $services ) : BagOStuff {
+               $config = $services->getMainConfig();
                $cacheId = \ObjectCache::detectLocalServerCache();
 
-               return \ObjectCache::newFromId( $cacheId );
+               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 {
@@ -329,7 +354,6 @@ return [
                                ? $services->getLocalServerObjectCache()
                                : new EmptyBagOStuff(),
                        $mainConfig->get( 'UseDatabaseMessages' ),
-                       $mainConfig->get( 'MsgCacheExpiry' ),
                        $services->getContentLanguage()
                );
        },
@@ -416,6 +440,10 @@ return [
                );
        },
 
+       'ObjectFactory' => function ( MediaWikiServices $services ) : ObjectFactory {
+               return new ObjectFactory( $services );
+       },
+
        'OldRevisionImporter' => function ( MediaWikiServices $services ) : OldRevisionImporter {
                return new ImportableOldRevisionImporter(
                        true,
@@ -495,17 +523,12 @@ return [
        },
 
        '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()
                );
        },
@@ -714,6 +737,10 @@ return [
                );
        },
 
+       'TempFSFileFactory' => function ( MediaWikiServices $services ) : TempFSFileFactory {
+               return new TempFSFileFactory( $services->getMainConfig()->get( 'TmpDirectory' ) );
+       },
+
        'TitleFormatter' => function ( MediaWikiServices $services ) : TitleFormatter {
                return $services->getService( '_MediaWikiTitleCodec' );
        },