use MediaWiki\Linker\LinkRendererFactory;
use MediaWiki\Logger\LoggerFactory;
use MediaWiki\MediaWikiServices;
+use MediaWiki\Page\MovePageFactory;
use MediaWiki\Permissions\PermissionManager;
use MediaWiki\Preferences\PreferencesFactory;
use MediaWiki\Preferences\DefaultPreferencesFactory;
},
'LocalServerObjectCache' => function ( MediaWikiServices $services ) : BagOStuff {
+ $config = $services->getMainConfig();
$cacheId = \ObjectCache::detectLocalServerCache();
- return \ObjectCache::newFromId( $cacheId );
+ return \ObjectCache::newFromParams( $config->get( 'ObjectCaches' )[$cacheId] );
},
'MagicWordFactory' => function ( MediaWikiServices $services ) : MagicWordFactory {
);
},
+ 'MessageCache' => function ( MediaWikiServices $services ) : MessageCache {
+ $mainConfig = $services->getMainConfig();
+ return new MessageCache(
+ $services->getMainWANObjectCache(),
+ ObjectCache::getInstance( $mainConfig->get( 'MessageCacheType' ) ),
+ $mainConfig->get( 'UseLocalMessageCache' )
+ ? $services->getLocalServerObjectCache()
+ : new EmptyBagOStuff(),
+ $mainConfig->get( 'UseDatabaseMessages' ),
+ $mainConfig->get( 'MsgCacheExpiry' ),
+ $services->getContentLanguage()
+ );
+ },
+
'MimeAnalyzer' => function ( MediaWikiServices $services ) : MimeAnalyzer {
$logger = LoggerFactory::getInstance( 'Mime' );
$mainConfig = $services->getMainConfig();
return new MimeAnalyzer( $params );
},
+ 'MovePageFactory' => function ( MediaWikiServices $services ) : MovePageFactory {
+ return new MovePageFactory(
+ new ServiceOptions( MovePageFactory::$constructorOptions, $services->getMainConfig() ),
+ $services->getDBLoadBalancer(),
+ $services->getNamespaceInfo(),
+ $services->getWatchedItemStore(),
+ $services->getPermissionManager(),
+ $services->getRepoGroup()
+ );
+ },
+
'NamespaceInfo' => function ( MediaWikiServices $services ) : NamespaceInfo {
return new NamespaceInfo( new ServiceOptions( NamespaceInfo::$constructorOptions,
$services->getMainConfig() ) );