jenkins-bot has submitted this change and it was merged. ( 
https://gerrit.wikimedia.org/r/369441 )

Change subject: WikibaseClient don't confuse 
TermLookup/TermBuffer/PrefetchingTermLookup
......................................................................


WikibaseClient don't confuse TermLookup/TermBuffer/PrefetchingTermLookup

This fixes WikibaseClient::overrideTermLookup to actually
follow it's contract. Previously it took TermLookups for
PrefetchingTermLookups.

Change-Id: I225fcd6657139bfb362dc9fef99b2889a88a5878
---
M client/includes/WikibaseClient.php
1 file changed, 25 insertions(+), 6 deletions(-)

Approvals:
  WMDE-leszek: Looks good to me, approved
  jenkins-bot: Verified



diff --git a/client/includes/WikibaseClient.php 
b/client/includes/WikibaseClient.php
index 6b2d353..9a0ba9d 100644
--- a/client/includes/WikibaseClient.php
+++ b/client/includes/WikibaseClient.php
@@ -224,9 +224,19 @@
        private $repositoryDefinitions;
 
        /**
-        * @var PrefetchingTermLookup|null
+        * @var TermLookup|null
         */
        private $termLookup = null;
+
+       /**
+        * @var TermBuffer|null
+        */
+       private $termBuffer = null;
+
+       /**
+        * @var PrefetchingTermLookup|null
+        */
+       private $prefetchingTermLookup = null;
 
        /**
         * @var EntityNamespaceLookup|null
@@ -423,25 +433,34 @@
         * @return TermBuffer
         */
        public function getTermBuffer() {
-               return $this->getPrefetchingTermLookup();
+               if ( !$this->termBuffer ) {
+                       $this->termBuffer = $this->getPrefetchingTermLookup();
+               }
+
+               return $this->termBuffer;
        }
 
        /**
         * @return TermLookup
         */
        public function getTermLookup() {
-               return $this->getPrefetchingTermLookup();
+               if ( !$this->termLookup ) {
+                       $this->termLookup = $this->getPrefetchingTermLookup();
+               }
+
+               return $this->termLookup;
        }
 
        /**
         * @return PrefetchingTermLookup
         */
        private function getPrefetchingTermLookup() {
-               if ( !$this->termLookup ) {
-                       $this->termLookup = 
$this->getEntityDataRetrievalServiceFactory()->getTermBuffer();
+               if ( !$this->prefetchingTermLookup ) {
+                       // TODO: This should not assume the TermBuffer instance 
to be a PrefetchingTermLookup
+                       $this->prefetchingTermLookup = 
$this->getEntityDataRetrievalServiceFactory()->getTermBuffer();
                }
 
-               return $this->termLookup;
+               return $this->prefetchingTermLookup;
        }
 
        /**

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

Gerrit-MessageType: merged
Gerrit-Change-Id: I225fcd6657139bfb362dc9fef99b2889a88a5878
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/Wikibase
Gerrit-Branch: master
Gerrit-Owner: Hoo man <[email protected]>
Gerrit-Reviewer: Aude <[email protected]>
Gerrit-Reviewer: Daniel Kinzler <[email protected]>
Gerrit-Reviewer: Ladsgroup <[email protected]>
Gerrit-Reviewer: WMDE-leszek <[email protected]>
Gerrit-Reviewer: jenkins-bot <>

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to