use MediaWiki\MediaWikiServices;
return [
- 'DBLoadBalancerFactory' => function( MediaWikiServices $services ) {
+ 'DBLoadBalancerFactory' => function ( MediaWikiServices $services ) {
$mainConfig = $services->getMainConfig();
$lbConf = MWLBFactory::applyDefaultConfig(
return new $class( $lbConf );
},
- 'DBLoadBalancer' => function( MediaWikiServices $services ) {
+ 'DBLoadBalancer' => function ( MediaWikiServices $services ) {
// just return the default LB from the DBLoadBalancerFactory service
return $services->getDBLoadBalancerFactory()->getMainLB();
},
- 'SiteStore' => function( MediaWikiServices $services ) {
+ 'SiteStore' => function ( MediaWikiServices $services ) {
$rawSiteStore = new DBSiteStore( $services->getDBLoadBalancer() );
// TODO: replace wfGetCache with a CacheFactory service.
return new CachingSiteStore( $rawSiteStore, $cache );
},
- 'SiteLookup' => function( MediaWikiServices $services ) {
+ 'SiteLookup' => function ( MediaWikiServices $services ) {
$cacheFile = $services->getMainConfig()->get( 'SitesCacheFile' );
if ( $cacheFile !== false ) {
}
},
- 'ConfigFactory' => function( MediaWikiServices $services ) {
+ 'ConfigFactory' => function ( MediaWikiServices $services ) {
// Use the bootstrap config to initialize the ConfigFactory.
$registry = $services->getBootstrapConfig()->get( 'ConfigRegistry' );
$factory = new ConfigFactory();
return $factory;
},
- 'MainConfig' => function( MediaWikiServices $services ) {
+ 'MainConfig' => function ( MediaWikiServices $services ) {
// Use the 'main' config from the ConfigFactory service.
return $services->getConfigFactory()->makeConfig( 'main' );
},
- 'InterwikiLookup' => function( MediaWikiServices $services ) {
+ 'InterwikiLookup' => function ( MediaWikiServices $services ) {
global $wgContLang; // TODO: manage $wgContLang as a service
$config = $services->getMainConfig();
return new ClassicInterwikiLookup(
);
},
- 'StatsdDataFactory' => function( MediaWikiServices $services ) {
+ 'StatsdDataFactory' => function ( MediaWikiServices $services ) {
return new BufferingStatsdDataFactory(
rtrim( $services->getMainConfig()->get( 'StatsdMetricPrefix' ), '.' )
);
},
- 'EventRelayerGroup' => function( MediaWikiServices $services ) {
+ 'EventRelayerGroup' => function ( MediaWikiServices $services ) {
return new EventRelayerGroup( $services->getMainConfig()->get( 'EventRelayerConfig' ) );
},
- 'SearchEngineFactory' => function( MediaWikiServices $services ) {
+ 'SearchEngineFactory' => function ( MediaWikiServices $services ) {
return new SearchEngineFactory( $services->getSearchEngineConfig() );
},
- 'SearchEngineConfig' => function( MediaWikiServices $services ) {
+ 'SearchEngineConfig' => function ( MediaWikiServices $services ) {
global $wgContLang;
return new SearchEngineConfig( $services->getMainConfig(), $wgContLang );
},
- 'SkinFactory' => function( MediaWikiServices $services ) {
+ 'SkinFactory' => function ( MediaWikiServices $services ) {
$factory = new SkinFactory();
$names = $services->getMainConfig()->get( 'ValidSkinNames' );
return $factory;
},
- 'WatchedItemStore' => function( MediaWikiServices $services ) {
+ 'WatchedItemStore' => function ( MediaWikiServices $services ) {
$store = new WatchedItemStore(
$services->getDBLoadBalancer(),
new HashBagOStuff( [ 'maxKeys' => 100 ] ),
return $store;
},
- 'WatchedItemQueryService' => function( MediaWikiServices $services ) {
+ 'WatchedItemQueryService' => function ( MediaWikiServices $services ) {
return new WatchedItemQueryService( $services->getDBLoadBalancer() );
},
- 'CryptRand' => function( MediaWikiServices $services ) {
+ 'CryptRand' => function ( MediaWikiServices $services ) {
$secretKey = $services->getMainConfig()->get( 'SecretKey' );
return new CryptRand(
[
// for a little more variance
'wfWikiID',
// If we have a secret key set then throw it into the state as well
- function() use ( $secretKey ) {
+ function () use ( $secretKey ) {
return $secretKey ?: '';
}
],
);
},
- 'CryptHKDF' => function( MediaWikiServices $services ) {
+ 'CryptHKDF' => function ( MediaWikiServices $services ) {
$config = $services->getMainConfig();
$secret = $config->get( 'HKDFSecret' ) ?: $config->get( 'SecretKey' );
);
},
- 'MediaHandlerFactory' => function( MediaWikiServices $services ) {
+ 'MediaHandlerFactory' => function ( MediaWikiServices $services ) {
return new MediaHandlerFactory(
$services->getMainConfig()->get( 'MediaHandlers' )
);
},
- 'MimeAnalyzer' => function( MediaWikiServices $services ) {
+ 'MimeAnalyzer' => function ( MediaWikiServices $services ) {
$logger = LoggerFactory::getInstance( 'Mime' );
$mainConfig = $services->getMainConfig();
$params = [
return new MimeMagic( $params );
},
- 'ProxyLookup' => function( MediaWikiServices $services ) {
+ 'ProxyLookup' => function ( MediaWikiServices $services ) {
$mainConfig = $services->getMainConfig();
return new ProxyLookup(
$mainConfig->get( 'SquidServers' ),
);
},
- 'Parser' => function( MediaWikiServices $services ) {
+ 'Parser' => function ( MediaWikiServices $services ) {
$conf = $services->getMainConfig()->get( 'ParserConf' );
return ObjectFactory::constructClassInstance( $conf['class'], [ $conf ] );
},
- 'LinkCache' => function( MediaWikiServices $services ) {
+ 'ParserCache' => function ( MediaWikiServices $services ) {
+ $config = $services->getMainConfig();
+ $cache = ObjectCache::getInstance( $config->get( 'ParserCacheType' ) );
+ wfDebugLog( 'caches', 'parser: ' . get_class( $cache ) );
+
+ return new ParserCache(
+ $cache,
+ $config->get( 'CacheEpoch' )
+ );
+ },
+
+ 'LinkCache' => function ( MediaWikiServices $services ) {
return new LinkCache(
$services->getTitleFormatter(),
$services->getMainWANObjectCache()
);
},
- 'LinkRendererFactory' => function( MediaWikiServices $services ) {
+ 'LinkRendererFactory' => function ( MediaWikiServices $services ) {
return new LinkRendererFactory(
$services->getTitleFormatter(),
$services->getLinkCache()
);
},
- 'LinkRenderer' => function( MediaWikiServices $services ) {
+ 'LinkRenderer' => function ( MediaWikiServices $services ) {
global $wgUser;
if ( defined( 'MW_NO_SESSION' ) ) {
}
},
- 'GenderCache' => function( MediaWikiServices $services ) {
+ 'GenderCache' => function ( MediaWikiServices $services ) {
return new GenderCache();
},
- '_MediaWikiTitleCodec' => function( MediaWikiServices $services ) {
+ '_MediaWikiTitleCodec' => function ( MediaWikiServices $services ) {
global $wgContLang;
return new MediaWikiTitleCodec(
);
},
- 'TitleFormatter' => function( MediaWikiServices $services ) {
+ 'TitleFormatter' => function ( MediaWikiServices $services ) {
return $services->getService( '_MediaWikiTitleCodec' );
},
- 'TitleParser' => function( MediaWikiServices $services ) {
+ 'TitleParser' => function ( MediaWikiServices $services ) {
return $services->getService( '_MediaWikiTitleCodec' );
},
- 'MainObjectStash' => function( MediaWikiServices $services ) {
+ 'MainObjectStash' => function ( MediaWikiServices $services ) {
$mainConfig = $services->getMainConfig();
$id = $mainConfig->get( 'MainStash' );
return \ObjectCache::newFromParams( $mainConfig->get( 'ObjectCaches' )[$id] );
},
- 'MainWANObjectCache' => function( MediaWikiServices $services ) {
+ 'MainWANObjectCache' => function ( MediaWikiServices $services ) {
$mainConfig = $services->getMainConfig();
$id = $mainConfig->get( 'MainWANCache' );
return \ObjectCache::newWANCacheFromParams( $params );
},
- 'LocalServerObjectCache' => function( MediaWikiServices $services ) {
+ 'LocalServerObjectCache' => function ( MediaWikiServices $services ) {
$mainConfig = $services->getMainConfig();
if ( function_exists( 'apc_fetch' ) ) {
return \ObjectCache::newFromParams( $mainConfig->get( 'ObjectCaches' )[$id] );
},
- 'VirtualRESTServiceClient' => function( MediaWikiServices $services ) {
+ 'VirtualRESTServiceClient' => function ( MediaWikiServices $services ) {
$config = $services->getMainConfig()->get( 'VirtualRestConfig' );
$vrsClient = new VirtualRESTServiceClient( new MultiHttpClient( [] ) );
return $vrsClient;
},
- 'ConfiguredReadOnlyMode' => function( MediaWikiServices $services ) {
+ 'ConfiguredReadOnlyMode' => function ( MediaWikiServices $services ) {
return new ConfiguredReadOnlyMode( $services->getMainConfig() );
},
- 'ReadOnlyMode' => function( MediaWikiServices $services ) {
+ 'ReadOnlyMode' => function ( MediaWikiServices $services ) {
return new ReadOnlyMode(
$services->getConfiguredReadOnlyMode(),
$services->getDBLoadBalancer()