options = $options; $this->configuredReadOnlyMode = $configuredReadOnlyMode; $this->dbLoadBalancerFactory = $dbLoadBalancerFactory; $this->hookContainer = $hookContainer; $this->userEditTracker = $userEditTracker; $this->groupPermissionLookup = $groupPermissionsLookup; $this->jobQueueGroupFactory = $jobQueueGroupFactory; $this->logger = $logger; $this->tempUserConfig = $tempUserConfig; $this->clearCacheCallbacks = $clearCacheCallbacks; } /** * @param string|false $dbDomain * @return UserGroupManager */ public function getUserGroupManager( $dbDomain = false ): UserGroupManager { // TODO: Once UserRightsProxy is removed, cache the instance per domain. return new UserGroupManager( $this->options, $this->configuredReadOnlyMode, $this->dbLoadBalancerFactory, $this->hookContainer, $this->userEditTracker, $this->groupPermissionLookup, $this->jobQueueGroupFactory->makeJobQueueGroup( $dbDomain ), $this->logger, $this->tempUserConfig, $this->clearCacheCallbacks, $dbDomain ); } }