X-Git-Url: https://git.heureux-cyclage.org/?a=blobdiff_plain;f=includes%2FServiceWiring.php;h=5131917d945fbd62af129df207574cb16660280d;hb=dd914b816e3321a5af75bca80df15bd45325c30f;hp=8b0452db3d8f75bd3b202290d13ff06ab47d3188;hpb=ee56f00ddf0609082f8ae9a4dc3e6e1b6f54ddfd;p=lhc%2Fweb%2Fwiklou.git diff --git a/includes/ServiceWiring.php b/includes/ServiceWiring.php index 8b0452db3d..5131917d94 100644 --- a/includes/ServiceWiring.php +++ b/includes/ServiceWiring.php @@ -45,6 +45,7 @@ use MediaWiki\MediaWikiServices; use MediaWiki\Preferences\DefaultPreferencesFactory; use MediaWiki\Shell\CommandFactory; use MediaWiki\Storage\BlobStoreFactory; +use MediaWiki\Storage\NameTableStore; use MediaWiki\Storage\RevisionStore; use MediaWiki\Storage\SqlBlobStore; use Wikimedia\ObjectFactory; @@ -60,7 +61,10 @@ return [ ); $class = MWLBFactory::getLBFactoryClass( $lbConf ); - return new $class( $lbConf ); + $instance = new $class( $lbConf ); + MWLBFactory::setSchemaAliases( $instance ); + + return $instance; }, 'DBLoadBalancer' => function ( MediaWikiServices $services ) { @@ -179,7 +183,8 @@ return [ 'WatchedItemQueryService' => function ( MediaWikiServices $services ) { return new WatchedItemQueryService( $services->getDBLoadBalancer(), - $services->getCommentStore() + $services->getCommentStore(), + $services->getActorMigration() ); }, @@ -442,6 +447,29 @@ return [ ); }, + 'UploadRevisionImporter' => function ( MediaWikiServices $services ) { + return new ImportableUploadRevisionImporter( + $services->getMainConfig()->get( 'EnableUploads' ), + LoggerFactory::getInstance( 'UploadRevisionImporter' ) + ); + }, + + 'OldRevisionImporter' => function ( MediaWikiServices $services ) { + return new ImportableOldRevisionImporter( + true, + LoggerFactory::getInstance( 'OldRevisionImporter' ), + $services->getDBLoadBalancer() + ); + }, + + 'WikiRevisionOldRevisionImporterNoUpdates' => function ( MediaWikiServices $services ) { + return new ImportableOldRevisionImporter( + false, + LoggerFactory::getInstance( 'OldRevisionImporter' ), + $services->getDBLoadBalancer() + ); + }, + 'ShellCommandFactory' => function ( MediaWikiServices $services ) { $config = $services->getMainConfig(); @@ -477,7 +505,8 @@ return [ $services->getDBLoadBalancer(), $blobStore, $services->getMainWANObjectCache(), - $services->getCommentStore() + $services->getCommentStore(), + $services->getActorMigration() ); $store->setLogger( LoggerFactory::getInstance( 'RevisionStore' ) ); @@ -514,6 +543,35 @@ return [ return $services->getBlobStoreFactory()->newSqlBlobStore(); }, + 'ContentModelStore' => function ( MediaWikiServices $services ) { + return new NameTableStore( + $services->getDBLoadBalancer(), + $services->getMainWANObjectCache(), + LoggerFactory::getInstance( 'NameTableSqlStore' ), + 'content_models', + 'model_id', + 'model_name' + /** + * No strtolower normalization is added to the service as there are examples of + * extensions that do not stick to this assumption. + * - extensions/examples/DataPages define( 'CONTENT_MODEL_XML_DATA','XML_DATA' ); + * - extensions/Scribunto define( 'CONTENT_MODEL_SCRIBUNTO', 'Scribunto' ); + */ + ); + }, + + 'SlotRoleStore' => function ( MediaWikiServices $services ) { + return new NameTableStore( + $services->getDBLoadBalancer(), + $services->getMainWANObjectCache(), + LoggerFactory::getInstance( 'NameTableSqlStore' ), + 'slot_roles', + 'role_id', + 'role_name', + 'strtolower' + ); + }, + 'PreferencesFactory' => function ( MediaWikiServices $services ) { global $wgContLang; $authManager = AuthManager::singleton(); @@ -532,7 +590,13 @@ return [ $wgContLang, $services->getMainConfig()->get( 'CommentTableSchemaMigrationStage' ) ); - } + }, + + 'ActorMigration' => function ( MediaWikiServices $services ) { + return new ActorMigration( + $services->getMainConfig()->get( 'ActorTableSchemaMigrationStage' ) + ); + }, /////////////////////////////////////////////////////////////////////////// // NOTE: When adding a service here, don't forget to add a getter function