From 38edb8ab30d21e67e69871582e34b5120cbcc33a Mon Sep 17 00:00:00 2001 From: daniel Date: Thu, 16 Nov 2017 20:44:44 +0100 Subject: [PATCH] Introduce the UserIdentity interface. This provides a narrow view on a user identity, providing access to ID and name. This has been extracted from I140f43a6fb443b for re-use with Actors, on Anomie's request. Change-Id: Ief00db5ce382537c5bf992159eae6baf096ae4be --- autoload.php | 1 + includes/user/User.php | 3 +- includes/user/UserIdentity.php | 51 ++++++++++++++++++++++++++++++++++ 3 files changed, 54 insertions(+), 1 deletion(-) create mode 100644 includes/user/UserIdentity.php diff --git a/autoload.php b/autoload.php index aef7e5e2c2..50055349df 100644 --- a/autoload.php +++ b/autoload.php @@ -957,6 +957,7 @@ $wgAutoloadLocalClasses = [ 'MediaWiki\\Tidy\\RemexDriver' => __DIR__ . '/includes/tidy/RemexDriver.php', 'MediaWiki\\Tidy\\RemexMungerData' => __DIR__ . '/includes/tidy/RemexMungerData.php', 'MediaWiki\\Tidy\\TidyDriverBase' => __DIR__ . '/includes/tidy/TidyDriverBase.php', + 'MediaWiki\\User\\UserIdentity' => __DIR__ . '/includes/user/UserIdentity.php', 'MediaWiki\\Widget\\ComplexNamespaceInputWidget' => __DIR__ . '/includes/widget/ComplexNamespaceInputWidget.php', 'MediaWiki\\Widget\\ComplexTitleInputWidget' => __DIR__ . '/includes/widget/ComplexTitleInputWidget.php', 'MediaWiki\\Widget\\DateInputWidget' => __DIR__ . '/includes/widget/DateInputWidget.php', diff --git a/includes/user/User.php b/includes/user/User.php index 854ebbd37d..37a80f22bc 100644 --- a/includes/user/User.php +++ b/includes/user/User.php @@ -27,6 +27,7 @@ use MediaWiki\Session\Token; use MediaWiki\Auth\AuthManager; use MediaWiki\Auth\AuthenticationResponse; use MediaWiki\Auth\AuthenticationRequest; +use MediaWiki\User\UserIdentity; use Wikimedia\ScopedCallback; use Wikimedia\Rdbms\Database; use Wikimedia\Rdbms\DBExpectedError; @@ -48,7 +49,7 @@ define( 'EDIT_TOKEN_SUFFIX', Token::SUFFIX ); * for rendering normal pages are set in the cookie to minimize use * of the database. */ -class User implements IDBAccessObject { +class User implements IDBAccessObject, UserIdentity { /** * @const int Number of characters in user_token field. */ diff --git a/includes/user/UserIdentity.php b/includes/user/UserIdentity.php new file mode 100644 index 0000000000..57a0408d7c --- /dev/null +++ b/includes/user/UserIdentity.php @@ -0,0 +1,51 @@ +