dbLoadBalancerFactory = $dbLoadBalancerFactory; $this->blobStoreFactory = $blobStoreFactory; $this->slotRoleRegistry = $slotRoleRegistry; $this->nameTables = $nameTables; $this->cache = $cache; $this->commentStore = $commentStore; $this->actorMigration = $actorMigration; $this->mcrMigrationStage = $migrationStage; $this->loggerProvider = $loggerProvider; $this->contentHandlerUseDB = $contentHandlerUseDB; } /** * @since 1.32 * * @param bool|string $wikiId false for the current domain / wikid * * @return RevisionStore for the given wikiId with all necessary services and a logger */ public function getRevisionStore( $wikiId = false ) { Assert::parameterType( 'string|boolean', $wikiId, '$wikiId' ); $store = new RevisionStore( $this->dbLoadBalancerFactory->getMainLB( $wikiId ), $this->blobStoreFactory->newSqlBlobStore( $wikiId ), $this->cache, // Pass local cache instance; Leave cache sharing to RevisionStore. $this->commentStore, $this->nameTables->getContentModels( $wikiId ), $this->nameTables->getSlotRoles( $wikiId ), $this->slotRoleRegistry, $this->mcrMigrationStage, $this->actorMigration, $wikiId ); $store->setLogger( $this->loggerProvider->getLogger( 'RevisionStore' ) ); $store->setContentHandlerUseDB( $this->contentHandlerUseDB ); return $store; } }