diff options
Diffstat (limited to 'includes/ServiceWiring.php')
-rw-r--r-- | includes/ServiceWiring.php | 50 |
1 files changed, 38 insertions, 12 deletions
diff --git a/includes/ServiceWiring.php b/includes/ServiceWiring.php index a54f06e3c6d1..831d45bbaff2 100644 --- a/includes/ServiceWiring.php +++ b/includes/ServiceWiring.php @@ -54,9 +54,11 @@ use MediaWiki\Block\BlockManager; use MediaWiki\Block\BlockPermissionCheckerFactory; use MediaWiki\Block\BlockRestrictionStore; use MediaWiki\Block\BlockRestrictionStoreFactory; +use MediaWiki\Block\BlockTargetFactory; use MediaWiki\Block\BlockUserFactory; use MediaWiki\Block\BlockUtils; use MediaWiki\Block\BlockUtilsFactory; +use MediaWiki\Block\CrossWikiBlockTargetFactory; use MediaWiki\Block\DatabaseBlock; use MediaWiki\Block\DatabaseBlockStore; use MediaWiki\Block\DatabaseBlockStoreFactory; @@ -117,6 +119,7 @@ use MediaWiki\Language\FormatterFactory; use MediaWiki\Language\Language; use MediaWiki\Language\LanguageCode; use MediaWiki\Language\LazyLocalizationContext; +use MediaWiki\Language\MessageParser; use MediaWiki\Languages\LanguageConverterFactory; use MediaWiki\Languages\LanguageEventIngress; use MediaWiki\Languages\LanguageFactory; @@ -245,6 +248,7 @@ use MediaWiki\User\Registration\UserRegistrationLookup; use MediaWiki\User\TalkPageNotificationManager; use MediaWiki\User\TempUser\RealTempUserConfig; use MediaWiki\User\TempUser\TempUserCreator; +use MediaWiki\User\TempUser\TempUserDetailsLookup; use MediaWiki\User\UserEditTracker; use MediaWiki\User\UserFactory; use MediaWiki\User\UserGroupManager; @@ -452,7 +456,7 @@ return [ BlockPermissionCheckerFactory::CONSTRUCTOR_OPTIONS, $services->getMainConfig() ), - $services->getBlockUtils() + $services->getBlockTargetFactory() ); }, @@ -466,6 +470,10 @@ return [ ); }, + 'BlockTargetFactory' => static function ( MediaWikiServices $services ): BlockTargetFactory { + return $services->getCrossWikiBlockTargetFactory()->getFactory(); + }, + 'BlockUserFactory' => static function ( MediaWikiServices $services ): BlockUserFactory { return $services->getService( '_UserBlockCommandFactory' ); }, @@ -476,13 +484,7 @@ return [ 'BlockUtilsFactory' => static function ( MediaWikiServices $services ): BlockUtilsFactory { return new BlockUtilsFactory( - new ServiceOptions( - BlockUtilsFactory::CONSTRUCTOR_OPTIONS, - $services->getMainConfig() - ), - $services->getActorStoreFactory(), - $services->getUserNameUtils(), - $services->getDBLoadBalancerFactory() + $services->getCrossWikiBlockTargetFactory() ); }, @@ -682,6 +684,14 @@ return [ return RequestTimeout::singleton()->createCriticalSectionProvider( $limit ); }, + 'CrossWikiBlockTargetFactory' => static function ( MediaWikiServices $services ): CrossWikiBlockTargetFactory { + return new CrossWikiBlockTargetFactory( + new ServiceOptions( CrossWikiBlockTargetFactory::CONSTRUCTOR_OPTIONS, $services->getMainConfig() ), + $services->getActorStoreFactory(), + $services->getUserNameUtils() + ); + }, + 'DatabaseBlockStore' => static function ( MediaWikiServices $services ): DatabaseBlockStore { return $services->getDatabaseBlockStoreFactory()->getDatabaseBlockStore( DatabaseBlock::LOCAL ); }, @@ -701,7 +711,7 @@ return [ $services->getReadOnlyMode(), $services->getUserFactory(), $services->getTempUserConfig(), - $services->getBlockUtilsFactory(), + $services->getCrossWikiBlockTargetFactory(), $services->getAutoblockExemptionList() ); }, @@ -877,7 +887,7 @@ return [ 'FormatterFactory' => static function ( MediaWikiServices $services ): FormatterFactory { return new FormatterFactory( - $services->getMessageCache(), + $services->getMessageParser(), $services->getTitleFormatter(), $services->getHookContainer(), $services->getUserIdentityUtils(), @@ -1312,7 +1322,7 @@ return [ $services->getLanguageNameUtils(), $services->getLanguageFallback(), $services->getHookContainer(), - $services->getParserFactory() + $services->getMessageParser() ); }, @@ -1320,6 +1330,15 @@ return [ return new MessageFormatterFactory(); }, + 'MessageParser' => static function ( MediaWikiServices $services ): MessageParser { + return new MessageParser( + $services->getParserFactory(), + $services->getDefaultOutputPipeline(), + $services->getLanguageFactory(), + LoggerFactory::getInstance( 'MessageParser' ) + ); + }, + 'MicroStash' => static function ( MediaWikiServices $services ): BagOStuff { $mainConfig = $services->getMainConfig(); @@ -2345,6 +2364,13 @@ return [ ); }, + 'TempUserDetailsLookup' => static function ( MediaWikiServices $services ): TempUserDetailsLookup { + return new TempUserDetailsLookup( + $services->getTempUserConfig(), + $services->getUserRegistrationLookup() + ); + }, + 'Tidy' => static function ( MediaWikiServices $services ): TidyDriverBase { return new RemexDriver( new ServiceOptions( @@ -2828,7 +2854,7 @@ return [ new ServiceOptions( UserBlockCommandFactory::CONSTRUCTOR_OPTIONS, $services->getMainConfig() ), $services->getHookContainer(), $services->getBlockPermissionCheckerFactory(), - $services->getBlockUtils(), + $services->getBlockTargetFactory(), $services->getDatabaseBlockStore(), $services->getBlockRestrictionStore(), $services->getUserFactory(), |