jenkins-bot has submitted this change and it was merged.

Change subject: Make GenderCache use MediaWikiServices
......................................................................


Make GenderCache use MediaWikiServices

Change-Id: Id20310f78d938bdfa4d29ae483bb1a33bacd2b51
---
M includes/MediaWikiServices.php
M includes/ServiceWiring.php
M includes/cache/GenderCache.php
M tests/phpunit/includes/MediaWikiServicesTest.php
4 files changed, 17 insertions(+), 9 deletions(-)

Approvals:
  Legoktm: Looks good to me, approved
  Jforrester: Looks good to me, but someone else must approve
  jenkins-bot: Verified



diff --git a/includes/MediaWikiServices.php b/includes/MediaWikiServices.php
index 6c650aa..d39b0df 100644
--- a/includes/MediaWikiServices.php
+++ b/includes/MediaWikiServices.php
@@ -4,6 +4,7 @@
 use Config;
 use ConfigFactory;
 use EventRelayerGroup;
+use GenderCache;
 use GlobalVarConfig;
 use Hooks;
 use LBFactory;
@@ -422,6 +423,14 @@
                return $this->getService( 'WatchedItemStore' );
        }
 
+       /**
+        * @since 1.28
+        * @return GenderCache
+        */
+       public function getGenderCache() {
+               return $this->getService( 'GenderCache' );
+       }
+
        
///////////////////////////////////////////////////////////////////////////
        // NOTE: When adding a service getter here, don't forget to add a test
        // case for it in MediaWikiServicesTest::provideGetters() and in
diff --git a/includes/ServiceWiring.php b/includes/ServiceWiring.php
index 8e95034..e282bda 100644
--- a/includes/ServiceWiring.php
+++ b/includes/ServiceWiring.php
@@ -139,6 +139,10 @@
                return $store;
        },
 
+       'GenderCache' => function( MediaWikiServices $services ) {
+               return new GenderCache();
+       },
+
        
///////////////////////////////////////////////////////////////////////////
        // NOTE: When adding a service here, don't forget to add a getter 
function
        // in the MediaWikiServices class. The convenience getter should just 
call
diff --git a/includes/cache/GenderCache.php b/includes/cache/GenderCache.php
index 19695df..80f04ce 100644
--- a/includes/cache/GenderCache.php
+++ b/includes/cache/GenderCache.php
@@ -21,6 +21,7 @@
  * @author Niklas Laxström
  * @ingroup Cache
  */
+use MediaWiki\MediaWikiServices;
 
 /**
  * Caches user genders when needed to use correct namespace aliases.
@@ -34,18 +35,11 @@
        protected $missLimit = 1000;
 
        /**
+        * @deprecated in 1.28 see 
MediaWikiServices::getInstance()->getGenderCache()
         * @return GenderCache
         */
        public static function singleton() {
-               static $that = null;
-               if ( $that === null ) {
-                       $that = new self();
-               }
-
-               return $that;
-       }
-
-       protected function __construct() {
+               return MediaWikiServices::getInstance()->getGenderCache();
        }
 
        /**
diff --git a/tests/phpunit/includes/MediaWikiServicesTest.php 
b/tests/phpunit/includes/MediaWikiServicesTest.php
index 6c38d50..4f917a5 100644
--- a/tests/phpunit/includes/MediaWikiServicesTest.php
+++ b/tests/phpunit/includes/MediaWikiServicesTest.php
@@ -238,6 +238,7 @@
                        'DBLoadBalancerFactory' => [ 'DBLoadBalancerFactory', 
'LBFactory' ],
                        'DBLoadBalancer' => [ 'DBLoadBalancer', 'LoadBalancer' 
],
                        'WatchedItemStore' => [ 'WatchedItemStore', 
WatchedItemStore::class ],
+                       'GenderCache' => [ 'GenderCache', GenderCache::class ],
                ];
        }
 

-- 
To view, visit https://gerrit.wikimedia.org/r/287409
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: merged
Gerrit-Change-Id: Id20310f78d938bdfa4d29ae483bb1a33bacd2b51
Gerrit-PatchSet: 3
Gerrit-Project: mediawiki/core
Gerrit-Branch: master
Gerrit-Owner: Addshore <addshorew...@gmail.com>
Gerrit-Reviewer: Daniel Kinzler <daniel.kinz...@wikimedia.de>
Gerrit-Reviewer: Jforrester <jforres...@wikimedia.org>
Gerrit-Reviewer: Legoktm <legoktm.wikipe...@gmail.com>
Gerrit-Reviewer: jenkins-bot <>

_______________________________________________
MediaWiki-commits mailing list
MediaWiki-commits@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to