MediaWiki REL1_32
MediaWiki\Revision\RevisionStoreFactory Class Reference

Factory service for RevisionStore instances. More...

Collaboration diagram for MediaWiki\Revision\RevisionStoreFactory:

Public Member Functions

 __construct (ILBFactory $dbLoadBalancerFactory, BlobStoreFactory $blobStoreFactory, NameTableStoreFactory $nameTables, WANObjectCache $cache, CommentStore $commentStore, ActorMigration $actorMigration, $migrationStage, LoggerSpi $loggerProvider, $contentHandlerUseDB)
 
 getRevisionStore ( $wikiId=false)
 

Private Attributes

ActorMigration $actorMigration
 
BlobStoreFactory $blobStoreFactory
 
WANObjectCache $cache
 
CommentStore $commentStore
 
bool $contentHandlerUseDB
 
ILBFactory $dbLoadBalancerFactory
 
LoggerSpi $loggerProvider
 
int $mcrMigrationStage
 One of the MIGRATION_* constants.
 
NameTableStoreFactory $nameTables
 

Detailed Description

Factory service for RevisionStore instances.

This allows RevisionStores to be created for cross-wiki access.

Warning
Beware compatibility issues with schema migration in the context of cross-wiki access! This class assumes that all wikis are at compatible migration stages for all relevant schemas. Relevant schemas are: revision storage (MCR), the revision comment table, and the actor table. Migration stages are compatible as long as a) there are no wikis in the cluster that only write the old schema or b) there are no wikis that read only the new schema.
Since
1.32

Definition at line 49 of file RevisionStoreFactory.php.

Constructor & Destructor Documentation

◆ __construct()

MediaWiki\Revision\RevisionStoreFactory::__construct ( ILBFactory  $dbLoadBalancerFactory,
BlobStoreFactory  $blobStoreFactory,
NameTableStoreFactory  $nameTables,
WANObjectCache  $cache,
CommentStore  $commentStore,
ActorMigration  $actorMigration,
  $migrationStage,
LoggerSpi  $loggerProvider,
  $contentHandlerUseDB 
)
Parameters
ILBFactory$dbLoadBalancerFactory
BlobStoreFactory$blobStoreFactory
NameTableStoreFactory$nameTables
WANObjectCache$cache
CommentStore$commentStore
ActorMigration$actorMigration
int$migrationStage
LoggerSpi$loggerProvider
bool$contentHandlerUseDBsee $wgContentHandlerUseDB. Must be the same for all wikis in the cluster. Will go away after MCR migration.

Definition at line 87 of file RevisionStoreFactory.php.

References MediaWiki\Revision\RevisionStoreFactory\$actorMigration, MediaWiki\Revision\RevisionStoreFactory\$blobStoreFactory, MediaWiki\Revision\RevisionStoreFactory\$cache, MediaWiki\Revision\RevisionStoreFactory\$commentStore, MediaWiki\Revision\RevisionStoreFactory\$contentHandlerUseDB, MediaWiki\Revision\RevisionStoreFactory\$dbLoadBalancerFactory, MediaWiki\Revision\RevisionStoreFactory\$loggerProvider, MediaWiki\Revision\RevisionStoreFactory\$nameTables, and cache.

Member Function Documentation

◆ getRevisionStore()

MediaWiki\Revision\RevisionStoreFactory::getRevisionStore (   $wikiId = false)
Since
1.32
Parameters
bool | string$wikiIdfalse for the current domain / wikid
Returns
RevisionStore for the given wikiId with all necessary services and a logger

Definition at line 117 of file RevisionStoreFactory.php.

Member Data Documentation

◆ $actorMigration

ActorMigration MediaWiki\Revision\RevisionStoreFactory::$actorMigration
private

◆ $blobStoreFactory

BlobStoreFactory MediaWiki\Revision\RevisionStoreFactory::$blobStoreFactory
private

◆ $cache

WANObjectCache MediaWiki\Revision\RevisionStoreFactory::$cache
private

◆ $commentStore

CommentStore MediaWiki\Revision\RevisionStoreFactory::$commentStore
private

◆ $contentHandlerUseDB

bool MediaWiki\Revision\RevisionStoreFactory::$contentHandlerUseDB
private

◆ $dbLoadBalancerFactory

ILBFactory MediaWiki\Revision\RevisionStoreFactory::$dbLoadBalancerFactory
private

◆ $loggerProvider

LoggerSpi MediaWiki\Revision\RevisionStoreFactory::$loggerProvider
private

◆ $mcrMigrationStage

int MediaWiki\Revision\RevisionStoreFactory::$mcrMigrationStage
private

One of the MIGRATION_* constants.

Definition at line 65 of file RevisionStoreFactory.php.

◆ $nameTables

NameTableStoreFactory MediaWiki\Revision\RevisionStoreFactory::$nameTables
private

The documentation for this class was generated from the following file: