Merge "api: Replace deprecated User::getAllGroups in ApiUserrights"

This commit is contained in:
jenkins-bot 2021-07-01 03:45:24 +00:00 committed by Gerrit Code Review
commit d88ba96371
2 changed files with 27 additions and 2 deletions

View file

@ -300,7 +300,12 @@ class ApiMain extends ApiBase {
'TalkPageNotificationManager',
]
],
'userrights' => ApiUserrights::class,
'userrights' => [
'class' => ApiUserrights::class,
'services' => [
'UserGroupManager',
]
],
'options' => [
'class' => ApiOptions::class,
'services' => [

View file

@ -23,8 +23,10 @@
* @file
*/
use MediaWiki\MediaWikiServices;
use MediaWiki\ParamValidator\TypeDef\UserDef;
use MediaWiki\Permissions\Authority;
use MediaWiki\User\UserGroupManager;
/**
* @ingroup API
@ -33,6 +35,24 @@ class ApiUserrights extends ApiBase {
private $mUser = null;
/** @var UserGroupManager */
private $userGroupManager;
/**
* @param ApiMain $mainModule
* @param string $moduleName
* @param UserGroupManager|null $userGroupManager
*/
public function __construct(
ApiMain $mainModule,
$moduleName,
UserGroupManager $userGroupManager = null
) {
parent::__construct( $mainModule, $moduleName );
// This class is extended and therefor fallback to global state - T285797
$this->userGroupManager = $userGroupManager ?? MediaWikiServices::getInstance()->getUserGroupManager();
}
/**
* Get a UserrightsPage object, or subclass.
* @return UserrightsPage
@ -46,7 +66,7 @@ class ApiUserrights extends ApiBase {
* @return array
*/
protected function getAllGroups() {
return User::getAllGroups();
return $this->userGroupManager->listAllGroups();
}
public function execute() {