Wikibase
MediaWiki Wikibase extension
Loading...
Searching...
No Matches
Wikibase\Lib\Store\Sql\Terms\PrefetchingEntityTermLookupBase Class Reference

Base class for a PrefetchingTermLookup that only supports a single entity type, using the new, normalized schema (starting at wbt_item_terms/wbt_property_terms). More...

+ Inheritance diagram for Wikibase\Lib\Store\Sql\Terms\PrefetchingEntityTermLookupBase:
+ Collaboration diagram for Wikibase\Lib\Store\Sql\Terms\PrefetchingEntityTermLookupBase:

Public Member Functions

 __construct (DatabaseTermInLangIdsResolver $termInlangIdsResolver)
 
 getPrefetchedTerm (EntityId $entityId, $termType, $languageCode)
 Returns a term that was previously loaded by prefetchTerms.
 
 getPrefetchedAliases (EntityId $entityId, $languageCode)
 Returns terms that were previously loaded by prefetchTerms.
 
- Public Member Functions inherited from Wikibase\Lib\Store\EntityTermLookupBase
 getLabel (EntityId $entityId, $languageCode)
 
 getLabels (EntityId $entityId, array $languageCodes)
 
 getDescription (EntityId $entityId, $languageCode)
 
 getDescriptions (EntityId $entityId, array $languageCodes)
 
- Public Member Functions inherited from Wikibase\DataModel\Services\Term\TermBuffer
 prefetchTerms (array $entityIds, array $termTypes, array $languageCodes)
 Loads a set of terms into the buffer.
 

Protected Member Functions

 getTermsOfType (EntityId $entityId, $termType, array $languageCodes)
 Gets the text string terms for a given type.
 
- Protected Member Functions inherited from Wikibase\Lib\Store\EntityTermLookupBase
 convertTermsToMap (array $wikibaseTerms)
 

Protected Attributes

 $entityIdClass
 
 $statsPrefix
 
 $termInLangIdsResolver
 

Private Member Functions

 resolveTerms (array $ids, array $termTypes, array $languageCodes)
 
 getFromBuffer (EntityId $entityId, $termType, $languageCode)
 
 getKey (EntityId $entityId, string $termType, string $languageCode)
 
 getKeyString (string $entityId, string $termType, string $languageCode)
 
 setKeys (array $entityIds, array $termTypes, array $languageCodes)
 
 isPrefetched (EntityId $entityId, array $termTypes, array $languageCodes)
 

Private Attributes

 $terms = []
 
 $termKeys = []
 

Detailed Description

Base class for a PrefetchingTermLookup that only supports a single entity type, using the new, normalized schema (starting at wbt_item_terms/wbt_property_terms).

Prefetches from DatabaseTermInLangIdsResolver(DB) and stores them in $terms (current process only). Looks up terms from $terms.

Constructor & Destructor Documentation

◆ __construct()

Wikibase\Lib\Store\Sql\Terms\PrefetchingEntityTermLookupBase::__construct ( DatabaseTermInLangIdsResolver  $termInlangIdsResolver)
Parameters
DatabaseTermInLangIdsResolver$termInlangIdsResolver

Member Function Documentation

◆ getFromBuffer()

Wikibase\Lib\Store\Sql\Terms\PrefetchingEntityTermLookupBase::getFromBuffer ( EntityId  $entityId,
  $termType,
  $languageCode 
)
private

◆ getKey()

Wikibase\Lib\Store\Sql\Terms\PrefetchingEntityTermLookupBase::getKey ( EntityId  $entityId,
string  $termType,
string  $languageCode 
)
private

◆ getKeyString()

Wikibase\Lib\Store\Sql\Terms\PrefetchingEntityTermLookupBase::getKeyString ( string  $entityId,
string  $termType,
string  $languageCode 
)
private

◆ getPrefetchedAliases()

Wikibase\Lib\Store\Sql\Terms\PrefetchingEntityTermLookupBase::getPrefetchedAliases ( EntityId  $entityId,
  $languageCode 
)

Returns terms that were previously loaded by prefetchTerms.

Parameters
EntityId$entityId
string$languageCode
Returns
string[]|false|null The aliases, or false of that entity has no aliases, or null if the term was not yet requested via prefetchTerms().

Implements Wikibase\DataAccess\AliasTermBuffer.

◆ getPrefetchedTerm()

Wikibase\Lib\Store\Sql\Terms\PrefetchingEntityTermLookupBase::getPrefetchedTerm ( EntityId  $entityId,
  $termType,
  $languageCode 
)

Returns a term that was previously loaded by prefetchTerms.

Parameters
EntityId$entityId
string$termTypeOne of of TermTypes::TYPE_LABEL, TermTypes::TYPE_DESCRIPTION, TermTypes::TYPE_ALIAS
string$languageCode
Returns
string|false|null The term, or false of that term is known to not exist, or null if the term was not yet requested via prefetchTerms().

Implements Wikibase\DataModel\Services\Term\TermBuffer.

◆ getTermsOfType()

Wikibase\Lib\Store\Sql\Terms\PrefetchingEntityTermLookupBase::getTermsOfType ( EntityId  $entityId,
  $termType,
array  $languageCodes 
)
protected

Gets the text string terms for a given type.

If aliases are requested here you will only receive a single string.

Parameters
EntityId$entityId
string$termType
string[]$languageCodesThe languages to get terms for
Returns
string[] Normally indexed by language code

Reimplemented from Wikibase\Lib\Store\EntityTermLookupBase.

◆ isPrefetched()

Wikibase\Lib\Store\Sql\Terms\PrefetchingEntityTermLookupBase::isPrefetched ( EntityId  $entityId,
array  $termTypes,
array  $languageCodes 
)
private

◆ resolveTerms()

Wikibase\Lib\Store\Sql\Terms\PrefetchingEntityTermLookupBase::resolveTerms ( array  $ids,
array  $termTypes,
array  $languageCodes 
)
private

◆ setKeys()

Wikibase\Lib\Store\Sql\Terms\PrefetchingEntityTermLookupBase::setKeys ( array  $entityIds,
array  $termTypes,
array  $languageCodes 
)
private

Member Data Documentation

◆ $entityIdClass

Wikibase\Lib\Store\Sql\Terms\PrefetchingEntityTermLookupBase::$entityIdClass
protected

◆ $statsPrefix

Wikibase\Lib\Store\Sql\Terms\PrefetchingEntityTermLookupBase::$statsPrefix
protected

◆ $termInLangIdsResolver

Wikibase\Lib\Store\Sql\Terms\PrefetchingEntityTermLookupBase::$termInLangIdsResolver
protected

◆ $termKeys

Wikibase\Lib\Store\Sql\Terms\PrefetchingEntityTermLookupBase::$termKeys = []
private

◆ $terms

Wikibase\Lib\Store\Sql\Terms\PrefetchingEntityTermLookupBase::$terms = []
private

The documentation for this class was generated from the following file: