Bene has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/217241

Change subject: Use LanguageFallbackLabelDescriptionLookupFactory in 
SpecialListProperties
......................................................................

Use LanguageFallbackLabelDescriptionLookupFactory in SpecialListProperties

Change-Id: Ie1c13bb27ed920b28d4b11734e500f69da96e91b
---
M repo/includes/specials/SpecialListProperties.php
M repo/tests/phpunit/includes/specials/SpecialListPropertiesTest.php
2 files changed, 25 insertions(+), 45 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/Wikibase 
refs/changes/41/217241/1

diff --git a/repo/includes/specials/SpecialListProperties.php 
b/repo/includes/specials/SpecialListProperties.php
index 403f669..ae3591b 100644
--- a/repo/includes/specials/SpecialListProperties.php
+++ b/repo/includes/specials/SpecialListProperties.php
@@ -6,12 +6,9 @@
 use Html;
 use Wikibase\DataModel\Entity\PropertyId;
 use Wikibase\DataTypeSelector;
-use Wikibase\LanguageFallbackChainFactory;
-use Wikibase\Lib\Store\LanguageFallbackLabelDescriptionLookup;
-use Wikibase\Lib\Store\TermLookup;
 use Wikibase\PropertyInfoStore;
+use Wikibase\Repo\LanguageFallbackLabelDescriptionLookupFactory;
 use Wikibase\Repo\WikibaseRepo;
-use Wikibase\Store\TermBuffer;
 use Wikibase\View\EntityIdFormatterFactory;
 
 /**
@@ -41,24 +38,14 @@
        private $propertyInfoStore;
 
        /**
-        * @var LanguageFallbackChainFactory
-        */
-       private $languageFallbackChainFactory;
-
-       /**
-        * @var TermLookup
-        */
-       private $termLookup;
-
-       /**
-        * @var TermBuffer
-        */
-       private $termBuffer;
-
-       /**
         * @var EntityIdFormatterFactory
         */
        private $entityIdFormatterFactory;
+
+       /**
+        * @var LanguageFallbackLabelDescriptionLookupFactory
+        */
+       private $labelDescriptionLookupFactory;
 
        /**
         * @var string
@@ -71,10 +58,12 @@
                $this->initServices(
                        
WikibaseRepo::getDefaultInstance()->getDataTypeFactory(),
                        
WikibaseRepo::getDefaultInstance()->getStore()->getPropertyInfoStore(),
-                       
WikibaseRepo::getDefaultInstance()->getLanguageFallbackChainFactory(),
-                       WikibaseRepo::getDefaultInstance()->getTermLookup(),
-                       WikibaseRepo::getDefaultInstance()->getTermBuffer(),
-                       
WikibaseRepo::getDefaultInstance()->getEntityIdHtmlLinkFormatterFactory()
+                       
WikibaseRepo::getDefaultInstance()->getEntityIdHtmlLinkFormatterFactory(),
+                       new LanguageFallbackLabelDescriptionLookupFactory(
+                               
WikibaseRepo::getDefaultInstance()->getLanguageFallbackChainFactory(),
+                               
WikibaseRepo::getDefaultInstance()->getTermLookup(),
+                               
WikibaseRepo::getDefaultInstance()->getTermBuffer()
+                       )
                );
        }
 
@@ -85,17 +74,13 @@
        public function initServices(
                DataTypeFactory $dataTypeFactory,
                PropertyInfoStore $propertyInfoStore,
-               LanguageFallbackChainFactory $languageFallbackChainFactory,
-               TermLookup $termLookup,
-               TermBuffer $termBuffer,
-               EntityIdFormatterFactory $entityIdFormatterFactory
+               EntityIdFormatterFactory $entityIdFormatterFactory,
+               LanguageFallbackLabelDescriptionLookupFactory 
$labelDescriptionLookupFactory
        ) {
                $this->dataTypeFactory = $dataTypeFactory;
                $this->propertyInfoStore = $propertyInfoStore;
-               $this->languageFallbackChainFactory = 
$languageFallbackChainFactory;
-               $this->termLookup = $termLookup;
-               $this->termBuffer = $termBuffer;
                $this->entityIdFormatterFactory = $entityIdFormatterFactory;
+               $this->labelDescriptionLookupFactory = 
$labelDescriptionLookupFactory;
        }
 
        /**
@@ -198,20 +183,12 @@
                        return;
                }
 
-               $languageFallbackChain = 
$this->languageFallbackChainFactory->newFromLanguage(
+               $labelDescriptionLookup = 
$this->labelDescriptionLookupFactory->newLabelDescriptionLookup(
                        $this->getLanguage(),
-                       LanguageFallbackChainFactory::FALLBACK_SELF
-                               | 
LanguageFallbackChainFactory::FALLBACK_VARIANTS
-                               | LanguageFallbackChainFactory::FALLBACK_OTHERS
+                       $propertyIds
                );
-               $languages = $languageFallbackChain->getFetchLanguageCodes();
-               $labelDescriptionLookup = new 
LanguageFallbackLabelDescriptionLookup(
-                       $this->termLookup,
-                       $languageFallbackChain
-               );
-               $formatter = 
$this->entityIdFormatterFactory->getEntityIdFormater( $labelDescriptionLookup );
 
-               $this->termBuffer->prefetchTerms( $propertyIds, array( 'label' 
), $languages );
+               $formatter = 
$this->entityIdFormatterFactory->getEntityIdFormater( $labelDescriptionLookup );
 
                $html = Html::openElement( 'ul' );
 
diff --git a/repo/tests/phpunit/includes/specials/SpecialListPropertiesTest.php 
b/repo/tests/phpunit/includes/specials/SpecialListPropertiesTest.php
index 4297813..f5a0b2c 100644
--- a/repo/tests/phpunit/includes/specials/SpecialListPropertiesTest.php
+++ b/repo/tests/phpunit/includes/specials/SpecialListPropertiesTest.php
@@ -12,6 +12,7 @@
 use Wikibase\Lib\LanguageNameLookup;
 use Wikibase\PropertyInfoStore;
 use Wikibase\Repo\EntityIdHtmlLinkFormatterFactory;
+use Wikibase\Repo\LanguageFallbackLabelDescriptionLookupFactory;
 use Wikibase\Repo\Specials\SpecialListProperties;
 use Wikibase\Test\SpecialPageTestBase;
 
@@ -105,10 +106,12 @@
                $specialPage->initServices(
                        $this->getDataTypeFactory(),
                        $this->getPropertyInfoStore(),
-                       new LanguageFallbackChainFactory(),
-                       $this->getTermLookup(),
-                       $this->getTermBuffer(),
-                       new EntityIdHtmlLinkFormatterFactory( 
$this->getEntityTitleLookup(), new LanguageNameLookup() )
+                       new EntityIdHtmlLinkFormatterFactory( 
$this->getEntityTitleLookup(), new LanguageNameLookup() ),
+                       new LanguageFallbackLabelDescriptionLookupFactory(
+                               new LanguageFallbackChainFactory(),
+                               $this->getTermLookup(),
+                               $this->getTermBuffer()
+                       )
                );
 
                return $specialPage;

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

Gerrit-MessageType: newchange
Gerrit-Change-Id: Ie1c13bb27ed920b28d4b11734e500f69da96e91b
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/Wikibase
Gerrit-Branch: master
Gerrit-Owner: Bene <[email protected]>

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

Reply via email to