MediaWiki  1.34.0
MediaWikiServices.php
Go to the documentation of this file.
1 <?php
2 
3 namespace MediaWiki;
4 
6 use CommentStore;
7 use Config;
8 use ConfigFactory;
9 use CryptHKDF;
12 use GenderCache;
13 use GlobalVarConfig;
14 use Hooks;
16 use Liuggio\StatsdClient\Factory\StatsdDataFactoryInterface;
23 use PasswordReset;
44 use LinkCache;
49 use MWException;
50 use MessageCache;
51 use MimeAnalyzer;
52 use NamespaceInfo;
53 use ObjectCache;
54 use Parser;
55 use ParserCache;
56 use ParserFactory;
57 use PasswordFactory;
58 use ProxyLookup;
59 use RepoGroup;
60 use ResourceLoader;
61 use SearchEngine;
64 use SiteLookup;
65 use SiteStore;
68 use SkinFactory;
69 use TitleFormatter;
70 use TitleParser;
72 use Wikimedia\ObjectFactory;
80 
117 class MediaWikiServices extends ServiceContainer {
118 
122  private static $instance = null;
123 
138  public static function getInstance() {
139  if ( self::$instance === null ) {
140  // NOTE: constructing GlobalVarConfig here is not particularly pretty,
141  // but some information from the global scope has to be injected here,
142  // even if it's just a file name or database credentials to load
143  // configuration from.
144  $bootstrapConfig = new GlobalVarConfig();
145  self::$instance = self::newInstance( $bootstrapConfig, 'load' );
146  }
147 
148  return self::$instance;
149  }
150 
164  public static function forceGlobalInstance( MediaWikiServices $services ) {
165  if ( !defined( 'MW_PHPUNIT_TEST' ) ) {
166  throw new MWException( __METHOD__ . ' must not be used outside unit tests.' );
167  }
168 
169  $old = self::getInstance();
170  self::$instance = $services;
171 
172  return $old;
173  }
174 
214  public static function resetGlobalInstance( Config $bootstrapConfig = null, $quick = '' ) {
215  if ( self::$instance === null ) {
216  // no global instance yet, nothing to reset
217  return;
218  }
219 
220  self::failIfResetNotAllowed( __METHOD__ );
221 
222  if ( $bootstrapConfig === null ) {
223  $bootstrapConfig = self::$instance->getBootstrapConfig();
224  }
225 
226  $oldInstance = self::$instance;
227 
228  self::$instance = self::newInstance( $bootstrapConfig, 'load' );
229  self::$instance->importWiring( $oldInstance, [ 'BootstrapConfig' ] );
230 
231  if ( $quick === 'quick' ) {
232  self::$instance->salvage( $oldInstance );
233  } else {
234  $oldInstance->destroy();
235  }
236  }
237 
247  private function salvage( self $other ) {
248  foreach ( $this->getServiceNames() as $name ) {
249  // The service could be new in the new instance and not registered in the
250  // other instance (e.g. an extension that was loaded after the instantiation of
251  // the other instance. Skip this service in this case. See T143974
252  try {
253  $oldService = $other->peekService( $name );
254  } catch ( NoSuchServiceException $e ) {
255  continue;
256  }
257 
258  if ( $oldService instanceof SalvageableService ) {
260  $newService = $this->getService( $name );
261  $newService->salvage( $oldService );
262  }
263  }
264 
265  $other->destroy();
266  }
267 
283  private static function newInstance( Config $bootstrapConfig, $loadWiring = '' ) {
284  $instance = new self( $bootstrapConfig );
285 
286  // Load the default wiring from the specified files.
287  if ( $loadWiring === 'load' ) {
288  $wiringFiles = $bootstrapConfig->get( 'ServiceWiringFiles' );
289  $instance->loadWiringFiles( $wiringFiles );
290  }
291 
292  // Provide a traditional hook point to allow extensions to configure services.
293  Hooks::run( 'MediaWikiServices', [ $instance ] );
294 
295  return $instance;
296  }
297 
313  public static function disableStorageBackend() {
314  // TODO: also disable some Caches, JobQueues, etc
315  $destroy = [ 'DBLoadBalancer', 'DBLoadBalancerFactory' ];
316  $services = self::getInstance();
317 
318  foreach ( $destroy as $name ) {
319  $services->disableService( $name );
320  }
321 
323  }
324 
337  public static function resetChildProcessServices() {
338  // NOTE: for now, just reset everything. Since we don't know the interdependencies
339  // between services, we can't do this more selectively at this time.
340  self::resetGlobalInstance();
341 
342  // Child, reseed because there is no bug in PHP:
343  // https://bugs.php.net/bug.php?id=42465
344  mt_srand( getmypid() );
345  }
346 
368  public function resetServiceForTesting( $name, $destroy = true ) {
369  if ( !defined( 'MW_PHPUNIT_TEST' ) && !defined( 'MW_PARSER_TEST' ) ) {
370  throw new MWException( 'resetServiceForTesting() must not be used outside unit tests.' );
371  }
372 
373  $this->resetService( $name, $destroy );
374  }
375 
403  public static function failIfResetNotAllowed( $method ) {
404  if ( !defined( 'MW_PHPUNIT_TEST' )
405  && !defined( 'MW_PARSER_TEST' )
406  && !defined( 'MEDIAWIKI_INSTALL' )
407  && !defined( 'RUN_MAINTENANCE_IF_MAIN' )
408  && defined( 'MW_SERVICE_BOOTSTRAP_COMPLETE' )
409  ) {
410  throw new MWException( $method . ' may only be called during bootstrapping and unit tests!' );
411  }
412  }
413 
419  public function __construct( Config $config ) {
420  parent::__construct();
421 
422  // Register the given Config object as the bootstrap config service.
423  $this->defineService( 'BootstrapConfig', function () use ( $config ) {
424  return $config;
425  } );
426  }
427 
428  // CONVENIENCE GETTERS ////////////////////////////////////////////////////
429 
434  public function getActorMigration() {
435  return $this->getService( 'ActorMigration' );
436  }
437 
442  public function getBadFileLookup() : BadFileLookup {
443  return $this->getService( 'BadFileLookup' );
444  }
445 
450  public function getBlobStore() {
451  return $this->getService( '_SqlBlobStore' );
452  }
453 
458  public function getBlobStoreFactory() {
459  return $this->getService( 'BlobStoreFactory' );
460  }
461 
466  public function getBlockManager() : BlockManager {
467  return $this->getService( 'BlockManager' );
468  }
469 
474  public function getBlockRestrictionStore() : BlockRestrictionStore {
475  return $this->getService( 'BlockRestrictionStore' );
476  }
477 
491  public function getBootstrapConfig() {
492  return $this->getService( 'BootstrapConfig' );
493  }
494 
499  public function getChangeTagDefStore() {
500  return $this->getService( 'NameTableStoreFactory' )->getChangeTagDef();
501  }
502 
507  public function getCommentStore() {
508  return $this->getService( 'CommentStore' );
509  }
510 
515  public function getConfigFactory() {
516  return $this->getService( 'ConfigFactory' );
517  }
518 
523  public function getConfigRepository() {
524  return $this->getService( 'ConfigRepository' );
525  }
526 
531  public function getConfiguredReadOnlyMode() {
532  return $this->getService( 'ConfiguredReadOnlyMode' );
533  }
534 
539  public function getContentLanguage() {
540  return $this->getService( 'ContentLanguage' );
541  }
542 
547  public function getContentModelStore() {
548  return $this->getService( 'NameTableStoreFactory' )->getContentModels();
549  }
550 
555  public function getCryptHKDF() {
556  return $this->getService( 'CryptHKDF' );
557  }
558 
563  public function getDateFormatterFactory() {
564  return $this->getService( 'DateFormatterFactory' );
565  }
566 
571  public function getDBLoadBalancer() {
572  return $this->getService( 'DBLoadBalancer' );
573  }
574 
579  public function getDBLoadBalancerFactory() {
580  return $this->getService( 'DBLoadBalancerFactory' );
581  }
582 
587  public function getEventRelayerGroup() {
588  return $this->getService( 'EventRelayerGroup' );
589  }
590 
595  public function getExternalStoreAccess() {
596  return $this->getService( 'ExternalStoreAccess' );
597  }
598 
603  public function getExternalStoreFactory() {
604  return $this->getService( 'ExternalStoreFactory' );
605  }
606 
611  public function getGenderCache() {
612  return $this->getService( 'GenderCache' );
613  }
614 
619  public function getHttpRequestFactory() {
620  return $this->getService( 'HttpRequestFactory' );
621  }
622 
627  public function getInterwikiLookup() {
628  return $this->getService( 'InterwikiLookup' );
629  }
630 
635  public function getLanguageNameUtils() {
636  return $this->getService( 'LanguageNameUtils' );
637  }
638 
643  public function getLinkCache() {
644  return $this->getService( 'LinkCache' );
645  }
646 
654  public function getLinkRenderer() {
655  return $this->getService( 'LinkRenderer' );
656  }
657 
662  public function getLinkRendererFactory() {
663  return $this->getService( 'LinkRendererFactory' );
664  }
665 
671  return $this->getService( 'LocalisationCache' );
672  }
673 
678  public function getLocalServerObjectCache() {
679  return $this->getService( 'LocalServerObjectCache' );
680  }
681 
686  public function getLockManagerGroupFactory() : LockManagerGroupFactory {
687  return $this->getService( 'LockManagerGroupFactory' );
688  }
689 
694  public function getMagicWordFactory() {
695  return $this->getService( 'MagicWordFactory' );
696  }
697 
705  public function getMainConfig() {
706  return $this->getService( 'MainConfig' );
707  }
708 
713  public function getMainObjectStash() {
714  return $this->getService( 'MainObjectStash' );
715  }
716 
721  public function getMainWANObjectCache() {
722  return $this->getService( 'MainWANObjectCache' );
723  }
724 
729  public function getMediaHandlerFactory() {
730  return $this->getService( 'MediaHandlerFactory' );
731  }
732 
737  public function getMessageCache() : MessageCache {
738  return $this->getService( 'MessageCache' );
739  }
740 
745  public function getMessageFormatterFactory() {
746  return $this->getService( 'MessageFormatterFactory' );
747  }
748 
753  public function getMimeAnalyzer() {
754  return $this->getService( 'MimeAnalyzer' );
755  }
756 
761  public function getMovePageFactory() : MovePageFactory {
762  return $this->getService( 'MovePageFactory' );
763  }
764 
769  public function getNamespaceInfo() : NamespaceInfo {
770  return $this->getService( 'NamespaceInfo' );
771  }
772 
777  public function getNameTableStoreFactory() {
778  return $this->getService( 'NameTableStoreFactory' );
779  }
780 
788  public function getObjectFactory() {
789  return $this->getService( 'ObjectFactory' );
790  }
791 
796  public function getOldRevisionImporter() {
797  return $this->getService( 'OldRevisionImporter' );
798  }
799 
804  public function getPageEditStash() {
805  return $this->getService( 'PageEditStash' );
806  }
807 
812  public function getParser() {
813  return $this->getService( 'Parser' );
814  }
815 
820  public function getParserCache() {
821  return $this->getService( 'ParserCache' );
822  }
823 
828  public function getParserFactory() {
829  return $this->getService( 'ParserFactory' );
830  }
831 
836  public function getPasswordFactory() {
837  return $this->getService( 'PasswordFactory' );
838  }
839 
844  public function getPasswordReset() : PasswordReset {
845  return $this->getService( 'PasswordReset' );
846  }
847 
852  public function getPerDbNameStatsdDataFactory() {
853  return $this->getService( 'PerDbNameStatsdDataFactory' );
854  }
855 
860  public function getPermissionManager() {
861  return $this->getService( 'PermissionManager' );
862  }
863 
868  public function getPreferencesFactory() {
869  return $this->getService( 'PreferencesFactory' );
870  }
871 
876  public function getProxyLookup() {
877  return $this->getService( 'ProxyLookup' );
878  }
879 
884  public function getReadOnlyMode() {
885  return $this->getService( 'ReadOnlyMode' );
886  }
887 
892  public function getRepoGroup() : RepoGroup {
893  return $this->getService( 'RepoGroup' );
894  }
895 
900  public function getResourceLoader() {
901  return $this->getService( 'ResourceLoader' );
902  }
903 
908  public function getRevisionFactory() {
909  return $this->getService( 'RevisionFactory' );
910  }
911 
916  public function getRevisionLookup() {
917  return $this->getService( 'RevisionLookup' );
918  }
919 
924  public function getRevisionRenderer() {
925  return $this->getService( 'RevisionRenderer' );
926  }
927 
932  public function getRevisionStore() {
933  return $this->getService( 'RevisionStore' );
934  }
935 
940  public function getRevisionStoreFactory() {
941  return $this->getService( 'RevisionStoreFactory' );
942  }
943 
948  public function newSearchEngine() {
949  // New engine object every time, since they keep state
950  return $this->getService( 'SearchEngineFactory' )->create();
951  }
952 
957  public function getSearchEngineConfig() {
958  return $this->getService( 'SearchEngineConfig' );
959  }
960 
965  public function getSearchEngineFactory() {
966  return $this->getService( 'SearchEngineFactory' );
967  }
968 
973  public function getShellCommandFactory() {
974  return $this->getService( 'ShellCommandFactory' );
975  }
976 
981  public function getSiteLookup() {
982  return $this->getService( 'SiteLookup' );
983  }
984 
989  public function getSiteStore() {
990  return $this->getService( 'SiteStore' );
991  }
992 
997  public function getSkinFactory() {
998  return $this->getService( 'SkinFactory' );
999  }
1000 
1005  public function getSlotRoleRegistry() {
1006  return $this->getService( 'SlotRoleRegistry' );
1007  }
1008 
1013  public function getSlotRoleStore() {
1014  return $this->getService( 'NameTableStoreFactory' )->getSlotRoles();
1015  }
1016 
1022  return $this->getService( 'SpecialPageFactory' );
1023  }
1024 
1029  public function getStatsdDataFactory() {
1030  return $this->getService( 'StatsdDataFactory' );
1031  }
1032 
1037  public function getTempFSFileFactory() : TempFSFileFactory {
1038  return $this->getService( 'TempFSFileFactory' );
1039  }
1040 
1045  public function getTitleFormatter() {
1046  return $this->getService( 'TitleFormatter' );
1047  }
1048 
1053  public function getTitleParser() {
1054  return $this->getService( 'TitleParser' );
1055  }
1056 
1061  public function getUploadRevisionImporter() {
1062  return $this->getService( 'UploadRevisionImporter' );
1063  }
1064 
1069  public function getVirtualRESTServiceClient() {
1070  return $this->getService( 'VirtualRESTServiceClient' );
1071  }
1072 
1077  public function getWatchedItemQueryService() {
1078  return $this->getService( 'WatchedItemQueryService' );
1079  }
1080 
1085  public function getWatchedItemStore() {
1086  return $this->getService( 'WatchedItemStore' );
1087  }
1088 
1094  return $this->getService( 'OldRevisionImporter' );
1095  }
1096 
1102  return $this->getService( 'WikiRevisionOldRevisionImporterNoUpdates' );
1103  }
1104 
1109  public function getWikiRevisionUploadImporter() {
1110  return $this->getService( 'UploadRevisionImporter' );
1111  }
1112 
1113 }
EventRelayerGroup
Factory class for spawning EventRelayer objects using configuration.
Definition: EventRelayerGroup.php:26
MediaWiki\MediaWikiServices\getMessageCache
getMessageCache()
Definition: MediaWikiServices.php:737
ObjectCache\clear
static clear()
Clear all the cached instances.
Definition: ObjectCache.php:351
ObjectCache
Functions to get cache objects.
Definition: ObjectCache.php:68
LinkCache
Cache for article titles (prefixed DB keys) and ids linked from one source.
Definition: LinkCache.php:34
MediaWiki\MediaWikiServices\getShellCommandFactory
getShellCommandFactory()
Definition: MediaWikiServices.php:973
SpecialPageFactory
Wrapper for backward compatibility for old callers that used static methods.
Definition: SpecialPageFactory_deprecated.php:34
MediaWiki\MediaWikiServices\getInterwikiLookup
getInterwikiLookup()
Definition: MediaWikiServices.php:627
MediaWiki\MediaWikiServices\getResourceLoader
getResourceLoader()
Definition: MediaWikiServices.php:900
MediaWiki\MediaWikiServices\getSearchEngineConfig
getSearchEngineConfig()
Definition: MediaWikiServices.php:957
UploadRevisionImporter
Definition: UploadRevisionImporter.php:6
MagicWordFactory
A factory that stores information about MagicWords, and creates them on demand with caching.
Definition: MagicWordFactory.php:34
MediaWiki\MediaWikiServices\getSiteLookup
getSiteLookup()
Definition: MediaWikiServices.php:981
MediaWiki\MediaWikiServices\getParserFactory
getParserFactory()
Definition: MediaWikiServices.php:828
MediaWiki\MediaWikiServices\getBlockManager
getBlockManager()
Definition: MediaWikiServices.php:466
MediaWiki\Block\BlockManager
A service class for checking blocks.
Definition: BlockManager.php:44
MediaWiki\MediaWikiServices\getBlockRestrictionStore
getBlockRestrictionStore()
Definition: MediaWikiServices.php:474
MediaWiki\MediaWikiServices\getDBLoadBalancer
getDBLoadBalancer()
Definition: MediaWikiServices.php:571
MediaWiki\MediaWikiServices
MediaWikiServices is the service locator for the application scope of MediaWiki.
Definition: MediaWikiServices.php:117
MimeAnalyzer
Implements functions related to MIME types such as detection and mapping to file extension.
Definition: MimeAnalyzer.php:31
Revision\RevisionStore
Service for looking up page revisions.
Definition: RevisionStore.php:79
MediaWiki\Http\HttpRequestFactory
Factory creating MWHttpRequest objects.
Definition: HttpRequestFactory.php:35
MediaWiki\MediaWikiServices\getContentModelStore
getContentModelStore()
Definition: MediaWikiServices.php:547
MediaWiki\MediaWikiServices\getChangeTagDefStore
getChangeTagDefStore()
Definition: MediaWikiServices.php:499
MediaWiki\Linker\LinkRenderer
Class that generates HTML links for pages.
Definition: LinkRenderer.php:41
MediaWiki\MediaWikiServices\getRevisionLookup
getRevisionLookup()
Definition: MediaWikiServices.php:916
MediaWiki\MediaWikiServices\getBootstrapConfig
getBootstrapConfig()
Returns the Config object containing the bootstrap configuration.
Definition: MediaWikiServices.php:491
MediaWiki\FileBackend\LockManager\LockManagerGroupFactory
Service to construct LockManagerGroups.
Definition: LockManagerGroupFactory.php:11
MediaWiki\MediaWikiServices\getCommentStore
getCommentStore()
Definition: MediaWikiServices.php:507
MediaWiki\MediaWikiServices\getSlotRoleStore
getSlotRoleStore()
Definition: MediaWikiServices.php:1013
GenderCache
Caches user genders when needed to use correct namespace aliases.
Definition: GenderCache.php:33
CommentStore
CommentStore handles storage of comments (edit summaries, log reasons, etc) in the database.
Definition: CommentStore.php:31
MediaWiki\MediaWikiServices\getExternalStoreAccess
getExternalStoreAccess()
Definition: MediaWikiServices.php:595
MediaWiki\Linker\LinkRendererFactory
Factory to create LinkRender objects.
Definition: LinkRendererFactory.php:32
SearchEngineFactory
Factory class for SearchEngine.
Definition: SearchEngineFactory.php:11
Revision\RevisionFactory
Service for constructing revision objects.
Definition: RevisionFactory.php:37
MediaWiki\MediaWikiServices\getActorMigration
getActorMigration()
Definition: MediaWikiServices.php:434
ActorMigration
This class handles the logic for the actor table migration.
Definition: ActorMigration.php:38
MediaWiki\MediaWikiServices\getPermissionManager
getPermissionManager()
Definition: MediaWikiServices.php:860
MediaWiki\MediaWikiServices\getGenderCache
getGenderCache()
Definition: MediaWikiServices.php:611
MediaWiki\MediaWikiServices\getEventRelayerGroup
getEventRelayerGroup()
Definition: MediaWikiServices.php:587
MediaWiki\MediaWikiServices\getLockManagerGroupFactory
getLockManagerGroupFactory()
Definition: MediaWikiServices.php:686
Wikimedia\Services\NoSuchServiceException
Exception thrown when the requested service is not known.
Definition: NoSuchServiceException.php:35
SiteLookup
Definition: SiteLookup.php:28
Revision\RevisionLookup
Service for looking up page revisions.
Definition: RevisionLookup.php:38
MediaHandlerFactory
Class to construct MediaHandler objects.
Definition: MediaHandlerFactory.php:29
MediaWiki\MediaWikiServices\getOldRevisionImporter
getOldRevisionImporter()
Definition: MediaWikiServices.php:796
MediaWiki\MediaWikiServices\getPasswordReset
getPasswordReset()
Definition: MediaWikiServices.php:844
MediaWiki\Languages\LanguageNameUtils
Definition: LanguageNameUtils.php:45
MediaWiki\MediaWikiServices\getUploadRevisionImporter
getUploadRevisionImporter()
Definition: MediaWikiServices.php:1061
MediaWiki\MediaWikiServices\getProxyLookup
getProxyLookup()
Definition: MediaWikiServices.php:876
MediaWiki\MediaWikiServices\getSkinFactory
getSkinFactory()
Definition: MediaWikiServices.php:997
SiteStore
Definition: SiteStore.php:29
MediaWiki\MediaWikiServices\failIfResetNotAllowed
static failIfResetNotAllowed( $method)
Convenience method that throws an exception unless it is called during a phase in which resetting of ...
Definition: MediaWikiServices.php:403
MediaWiki\MediaWikiServices\getInstance
static getInstance()
Returns the global default instance of the top level service locator.
Definition: MediaWikiServices.php:138
MediaWiki\MediaWikiServices\getLocalisationCache
getLocalisationCache()
Definition: MediaWikiServices.php:670
Config
Interface for configuration instances.
Definition: Config.php:28
MediaWiki\MediaWikiServices\getSpecialPageFactory
getSpecialPageFactory()
Definition: MediaWikiServices.php:1021
MediaWiki\MediaWikiServices\getMagicWordFactory
getMagicWordFactory()
Definition: MediaWikiServices.php:694
MediaWiki\MediaWikiServices\getPerDbNameStatsdDataFactory
getPerDbNameStatsdDataFactory()
Definition: MediaWikiServices.php:852
MWException
MediaWiki exception.
Definition: MWException.php:26
MediaWiki\MediaWikiServices\resetServiceForTesting
resetServiceForTesting( $name, $destroy=true)
Resets the given service for testing purposes.
Definition: MediaWikiServices.php:368
MediaWiki\MediaWikiServices\getCryptHKDF
getCryptHKDF()
Definition: MediaWikiServices.php:555
Wikimedia\Services\ServiceContainer
ServiceContainer provides a generic service to manage named services using lazy instantiation based o...
Definition: ServiceContainer.php:49
MediaWiki\MediaWikiServices\resetGlobalInstance
static resetGlobalInstance(Config $bootstrapConfig=null, $quick='')
Creates a new instance of MediaWikiServices and sets it as the global default instance.
Definition: MediaWikiServices.php:214
MediaWiki\MediaWikiServices\getTempFSFileFactory
getTempFSFileFactory()
Definition: MediaWikiServices.php:1037
MediaWiki\MediaWikiServices\getWatchedItemStore
getWatchedItemStore()
Definition: MediaWikiServices.php:1085
MediaWiki\Storage\PageEditStash
Class for managing stashed edits used by the page updater classes.
Definition: PageEditStash.php:44
DateFormatterFactory
Definition: DateFormatterFactory.php:3
MediaWiki\MediaWikiServices\getMediaHandlerFactory
getMediaHandlerFactory()
Definition: MediaWikiServices.php:729
Config\get
get( $name)
Get a configuration variable such as "Sitename" or "UploadMaintenance.".
CryptHKDF
Definition: CryptHKDF.php:33
MediaWiki\MediaWikiServices\getWatchedItemQueryService
getWatchedItemQueryService()
Definition: MediaWikiServices.php:1077
MediaWiki\MediaWikiServices\getTitleParser
getTitleParser()
Definition: MediaWikiServices.php:1053
WatchedItemQueryService
Definition: WatchedItemQueryService.php:21
ProxyLookup
Definition: ProxyLookup.php:27
VirtualRESTServiceClient
Virtual HTTP service client loosely styled after a Virtual File System.
Definition: VirtualRESTServiceClient.php:45
MediaWiki\Interwiki\InterwikiLookup
Service interface for looking up Interwiki records.
Definition: InterwikiLookup.php:32
MediaWiki
This class serves as a utility class for this extension.
MediaWiki\MediaWikiServices\getMessageFormatterFactory
getMessageFormatterFactory()
Definition: MediaWikiServices.php:745
MediaWiki\MediaWikiServices\newSearchEngine
newSearchEngine()
Definition: MediaWikiServices.php:948
MediaWiki\MediaWikiServices\getMainConfig
getMainConfig()
Returns the Config object that provides configuration for MediaWiki core.
Definition: MediaWikiServices.php:705
MediaWiki\MediaWikiServices\getObjectFactory
getObjectFactory()
ObjectFactory is intended for instantiating "handlers" from declarative definitions,...
Definition: MediaWikiServices.php:788
MediaWiki\MediaWikiServices\getSearchEngineFactory
getSearchEngineFactory()
Definition: MediaWikiServices.php:965
MediaWiki\Storage\BlobStoreFactory
Service for instantiating BlobStores.
Definition: BlobStoreFactory.php:35
GlobalVarConfig
Accesses configuration settings from $GLOBALS.
Definition: GlobalVarConfig.php:28
TitleParser
A title parser service for MediaWiki.
Definition: TitleParser.php:33
MediaWiki\MediaWikiServices\disableStorageBackend
static disableStorageBackend()
Disables all storage layer services.
Definition: MediaWikiServices.php:313
MediaWiki\MediaWikiServices\getRevisionStoreFactory
getRevisionStoreFactory()
Definition: MediaWikiServices.php:940
MediaWiki\Page\MovePageFactory
Definition: MovePageFactory.php:36
MediaWiki\MediaWikiServices\getDBLoadBalancerFactory
getDBLoadBalancerFactory()
Definition: MediaWikiServices.php:579
MediaWiki\MediaWikiServices\newInstance
static newInstance(Config $bootstrapConfig, $loadWiring='')
Creates a new MediaWikiServices instance and initializes it according to the given $bootstrapConfig.
Definition: MediaWikiServices.php:283
MediaWiki\MediaWikiServices\getTitleFormatter
getTitleFormatter()
Definition: MediaWikiServices.php:1045
MediaWiki\MediaWikiServices\getHttpRequestFactory
getHttpRequestFactory()
Definition: MediaWikiServices.php:619
MediaWiki\MediaWikiServices\getRevisionFactory
getRevisionFactory()
Definition: MediaWikiServices.php:908
MediaWiki\MediaWikiServices\getParserCache
getParserCache()
Definition: MediaWikiServices.php:820
MediaWiki\MediaWikiServices\salvage
salvage(self $other)
@noinspection PhpDocSignatureInspection
Definition: MediaWikiServices.php:247
MediaWiki\FileBackend\FSFile\TempFSFileFactory
Definition: TempFSFileFactory.php:10
MediaWiki\MediaWikiServices\getPreferencesFactory
getPreferencesFactory()
Definition: MediaWikiServices.php:868
MediaWiki\Special\SpecialPageFactory
Factory for handling the special page list and generating SpecialPage objects.
Definition: SpecialPageFactory.php:64
MediaWiki\MediaWikiServices\__construct
__construct(Config $config)
Definition: MediaWikiServices.php:419
Wikimedia\Services\SalvageableService
SalvageableService defines an interface for services that are able to salvage state from a previous i...
Definition: SalvageableService.php:36
Revision\RevisionRenderer
The RevisionRenderer service provides access to rendered output for revisions.
Definition: RevisionRenderer.php:45
MediaWiki\Permissions\PermissionManager
A service class for checking permissions To obtain an instance, use MediaWikiServices::getInstance()-...
Definition: PermissionManager.php:47
MediaWiki\MediaWikiServices\getPasswordFactory
getPasswordFactory()
Definition: MediaWikiServices.php:836
ParserFactory
Definition: ParserFactory.php:33
MediaWiki\MediaWikiServices\getPageEditStash
getPageEditStash()
Definition: MediaWikiServices.php:804
MediaWiki\MediaWikiServices\getWikiRevisionOldRevisionImporterNoUpdates
getWikiRevisionOldRevisionImporterNoUpdates()
Definition: MediaWikiServices.php:1101
MediaWiki\MediaWikiServices\getVirtualRESTServiceClient
getVirtualRESTServiceClient()
Definition: MediaWikiServices.php:1069
SkinFactory
Factory class to create Skin objects.
Definition: SkinFactory.php:29
MediaWiki\MediaWikiServices\getBadFileLookup
getBadFileLookup()
Definition: MediaWikiServices.php:442
MediaWiki\MediaWikiServices\getConfigFactory
getConfigFactory()
Definition: MediaWikiServices.php:515
MediaWiki\Shell\CommandFactory
Factory facilitating dependency injection for Command.
Definition: CommandFactory.php:32
MediaWiki\MediaWikiServices\getWikiRevisionUploadImporter
getWikiRevisionUploadImporter()
Definition: MediaWikiServices.php:1109
MediaWiki\Preferences\PreferencesFactory
A PreferencesFactory is a MediaWiki service that provides the definitions of preferences for a given ...
Definition: PreferencesFactory.php:52
MediaWiki\MediaWikiServices\getRevisionRenderer
getRevisionRenderer()
Definition: MediaWikiServices.php:924
LocalisationCache
Class for caching the contents of localisation files, Messages*.php and *.i18n.php.
Definition: LocalisationCache.php:41
MediaWiki\Config\ConfigRepository
Object which holds currently registered configuration options.
Definition: ConfigRepository.php:33
MediaWiki\Storage\NameTableStore
Definition: NameTableStore.php:36
MediaWiki\MediaWikiServices\getExternalStoreFactory
getExternalStoreFactory()
Definition: MediaWikiServices.php:603
Revision\RevisionStoreFactory
Factory service for RevisionStore instances.
Definition: RevisionStoreFactory.php:49
MediaWiki\MediaWikiServices\getDateFormatterFactory
getDateFormatterFactory()
Definition: MediaWikiServices.php:563
SearchEngine
Contain a class for special pages.
Definition: SearchEngine.php:34
MediaWiki\Storage\BlobStore
Service for loading and storing data blobs.
Definition: BlobStore.php:35
MediaWiki\MediaWikiServices\getMainWANObjectCache
getMainWANObjectCache()
Definition: MediaWikiServices.php:721
MediaWiki\MediaWikiServices\getMimeAnalyzer
getMimeAnalyzer()
Definition: MediaWikiServices.php:753
IBufferingStatsdDataFactory
MediaWiki adaptation of StatsdDataFactory that provides buffering functionality.
Definition: IBufferingStatsdDataFactory.php:11
MediaWiki\MediaWikiServices\getSiteStore
getSiteStore()
Definition: MediaWikiServices.php:989
MediaWiki\MediaWikiServices\getBlobStore
getBlobStore()
Definition: MediaWikiServices.php:450
Wikimedia\Message\IMessageFormatterFactory
A simple factory providing a message formatter for a given language code.
Definition: IMessageFormatterFactory.php:10
MediaWiki\MediaWikiServices\getLocalServerObjectCache
getLocalServerObjectCache()
Definition: MediaWikiServices.php:678
MediaWiki\MediaWikiServices\getMovePageFactory
getMovePageFactory()
Definition: MediaWikiServices.php:761
OldRevisionImporter
Definition: OldRevisionImporter.php:6
MediaWiki\MediaWikiServices\getBlobStoreFactory
getBlobStoreFactory()
Definition: MediaWikiServices.php:458
MediaWiki\MediaWikiServices\getConfiguredReadOnlyMode
getConfiguredReadOnlyMode()
Definition: MediaWikiServices.php:531
MediaWiki\MediaWikiServices\getRevisionStore
getRevisionStore()
Definition: MediaWikiServices.php:932
MediaWiki\MediaWikiServices\getWikiRevisionOldRevisionImporter
getWikiRevisionOldRevisionImporter()
Definition: MediaWikiServices.php:1093
MediaWiki\MediaWikiServices\getParser
getParser()
Definition: MediaWikiServices.php:812
MediaWiki\MediaWikiServices\getLanguageNameUtils
getLanguageNameUtils()
Definition: MediaWikiServices.php:635
MediaWiki\MediaWikiServices\getNamespaceInfo
getNamespaceInfo()
Definition: MediaWikiServices.php:769
MediaWiki\MediaWikiServices\resetChildProcessServices
static resetChildProcessServices()
Resets any services that may have become stale after a child process returns from after pcntl_fork().
Definition: MediaWikiServices.php:337
MediaWiki\MediaWikiServices\getSlotRoleRegistry
getSlotRoleRegistry()
Definition: MediaWikiServices.php:1005
TitleFormatter
A title formatter service for MediaWiki.
Definition: TitleFormatter.php:34
Wikimedia\Rdbms\LBFactory
An interface for generating database load balancers.
Definition: LBFactory.php:40
MediaWiki\MediaWikiServices\getContentLanguage
getContentLanguage()
Definition: MediaWikiServices.php:539
MediaWiki\MediaWikiServices\getConfigRepository
getConfigRepository()
Definition: MediaWikiServices.php:523
RepoGroup
Prioritized list of file repositories.
Definition: RepoGroup.php:31
ParserCache
Definition: ParserCache.php:30
ConfigFactory
Factory class to create Config objects.
Definition: ConfigFactory.php:31
MediaWiki\Storage\NameTableStoreFactory
Definition: NameTableStoreFactory.php:26
SearchEngineConfig
Configuration handling class for SearchEngine.
Definition: SearchEngineConfig.php:9
Revision\SlotRoleRegistry
A registry service for SlotRoleHandlers, used to define which slot roles are available on which page.
Definition: SlotRoleRegistry.php:48
PasswordFactory
Factory class for creating and checking Password objects.
Definition: PasswordFactory.php:28
NamespaceInfo
This is a utility class for dealing with namespaces that encodes all the "magic" behaviors of them ba...
Definition: NamespaceInfo.php:33
MediaWiki\MediaWikiServices\getLinkRendererFactory
getLinkRendererFactory()
Definition: MediaWikiServices.php:662
MediaWiki\MediaWikiServices\getLinkRenderer
getLinkRenderer()
LinkRenderer instance that can be used if no custom options are needed.
Definition: MediaWikiServices.php:654
MediaWiki\MediaWikiServices\getMainObjectStash
getMainObjectStash()
Definition: MediaWikiServices.php:713
WatchedItemStoreInterface
Definition: WatchedItemStoreInterface.php:30
MessageCache
Cache of messages that are defined by MediaWiki namespace pages or by hooks.
Definition: MessageCache.php:40
Hooks\run
static run( $event, array $args=[], $deprecatedVersion=null)
Call hook functions defined in Hooks::register and $wgHooks.
Definition: Hooks.php:200
MediaWiki\MediaWikiServices\getLinkCache
getLinkCache()
Definition: MediaWikiServices.php:643
PasswordReset
Helper class for the password reset functionality shared by the web UI and the API.
Definition: PasswordReset.php:41
MediaWiki\MediaWikiServices\getReadOnlyMode
getReadOnlyMode()
Definition: MediaWikiServices.php:884
Wikimedia\Rdbms\ILoadBalancer
Database cluster connection, tracking, load balancing, and transaction manager interface.
Definition: ILoadBalancer.php:81
Hooks
Hooks class.
Definition: Hooks.php:34
MediaWiki\MediaWikiServices\forceGlobalInstance
static forceGlobalInstance(MediaWikiServices $services)
Replaces the global MediaWikiServices instance.
Definition: MediaWikiServices.php:164
MediaWiki\Block\BlockRestrictionStore
Definition: BlockRestrictionStore.php:34
MediaWiki\MediaWikiServices\getStatsdDataFactory
getStatsdDataFactory()
Definition: MediaWikiServices.php:1029
MediaWiki\MediaWikiServices\getNameTableStoreFactory
getNameTableStoreFactory()
Definition: MediaWikiServices.php:777
MediaWiki\MediaWikiServices\getRepoGroup
getRepoGroup()
Definition: MediaWikiServices.php:892