Merge "LoadBalancer object injection cleanups"
[lhc/web/wiklou.git] / includes / specialpage / SpecialPage.php
index f478203..99b9f33 100644 (file)
@@ -1,6 +1,4 @@
 <?php
-use MediaWiki\MediaWikiServices;
-
 /**
  * Parent class for all special pages.
  *
@@ -24,6 +22,8 @@ use MediaWiki\MediaWikiServices;
  */
 
 use MediaWiki\Auth\AuthManager;
+use MediaWiki\Linker\LinkRenderer;
+use MediaWiki\MediaWikiServices;
 
 /**
  * Parent class for all special pages.
@@ -60,6 +60,11 @@ class SpecialPage {
         */
        protected $mContext;
 
+       /**
+        * @var \MediaWiki\Linker\LinkRenderer|null
+        */
+       private $linkRenderer;
+
        /**
         * Get a localised Title object for a specified special page name
         *
@@ -826,4 +831,24 @@ class SpecialPage {
                        wfTransactionalTimeLimit();
                }
        }
+
+       /**
+        * @since 1.28
+        * @return \MediaWiki\Linker\LinkRenderer
+        */
+       protected function getLinkRenderer() {
+               if ( $this->linkRenderer ) {
+                       return $this->linkRenderer;
+               } else {
+                       return MediaWikiServices::getInstance()->getLinkRenderer();
+               }
+       }
+
+       /**
+        * @since 1.28
+        * @param \MediaWiki\Linker\LinkRenderer $linkRenderer
+        */
+       public function setLinkRenderer( LinkRenderer $linkRenderer ) {
+               $this->linkRenderer = $linkRenderer;
+       }
 }