dbLoadBalancerFactory = $dbLoadBalancerFactory; $this->blobStoreFactory = $blobStoreFactory; $this->slotRoleRegistry = $slotRoleRegistry; $this->nameTables = $nameTables; $this->cache = $cache; $this->commentStore = $commentStore; $this->actorMigration = $actorMigration; $this->mcrMigrationStage = $migrationStage; $this->logger = $logger; $this->contentHandlerUseDB = $contentHandlerUseDB; } /** * @since 1.32 * * @param bool|string $dbDomain DB domain of the relevant wiki or false for the current one * * @return RevisionStore for the given wikiId with all necessary services */ public function getRevisionStore( $dbDomain = false ) { Assert::parameterType( 'string|boolean', $dbDomain, '$dbDomain' ); $store = new RevisionStore( $this->dbLoadBalancerFactory->getMainLB( $dbDomain ), // @phan-suppress-next-line PhanAccessMethodInternal $this->blobStoreFactory->newSqlBlobStore( $dbDomain ), $this->cache, // Pass local cache instance; Leave cache sharing to RevisionStore. $this->commentStore, $this->nameTables->getContentModels( $dbDomain ), $this->nameTables->getSlotRoles( $dbDomain ), $this->slotRoleRegistry, $this->mcrMigrationStage, $this->actorMigration, $dbDomain ); $store->setLogger( $this->logger ); $store->setContentHandlerUseDB( $this->contentHandlerUseDB ); return $store; } }