Go to the documentation of this file.
49 foreach ( $arr as $item ) {
71 public function addObj( $linkTarget ) {
72 if ( is_object( $linkTarget ) ) {
73 $this->
add( $linkTarget->getNamespace(), $linkTarget->getDBkey() );
75 wfDebug(
"Warning: LinkBatch::addObj got invalid LinkTarget object\n" );
83 public function add( $ns, $dbkey ) {
84 if ( $ns < 0 || $dbkey ===
'' ) {
87 if ( !array_key_exists( $ns, $this->data ) ) {
88 $this->data[$ns] = [];
91 $this->data[$ns][strtr( $dbkey,
' ',
'_' )] = 1;
101 $this->data = $array;
119 return count( $this->data );
128 $linkCache = MediaWikiServices::getInstance()->getLinkCache();
163 $titleFormatter = MediaWikiServices::getInstance()->getTitleFormatter();
168 foreach (
$res as $row ) {
171 $pdbk = $titleFormatter->getPrefixedDBkey(
$title );
172 $ids[$pdbk] = $row->page_id;
173 unset( $remaining[$row->page_namespace][$row->page_title] );
177 foreach ( $remaining as $ns => $dbkeys ) {
178 foreach ( $dbkeys as $dbkey => $unused ) {
181 $pdbk = $titleFormatter->getPrefixedDBkey(
$title );
201 $fields = array_merge(
203 [
'page_namespace',
'page_title' ]
210 if ( strval( $this->caller ) !==
'' ) {
211 $caller .=
" (for {$this->caller})";
227 $services = MediaWikiServices::getInstance();
229 if ( !$services->getContentLanguage()->needsGenderDistinction() ) {
233 $genderCache = $services->getGenderCache();
234 $genderCache->doLinkBatch( $this->data, $this->caller );
247 return $db->makeWhereFrom2d( $this->data,
"{$prefix}_namespace",
"{$prefix}_title" );
doGenderQuery()
Do (and cache) {{GENDER:...}} information for userpages in this LinkBatch.
Class representing a list of titles The execute() method checks them all for existence and adds them ...
setCaller( $caller)
Use ->setCaller( METHOD ) to indicate which code is using this class.
setArray( $array)
Set the link list to a given 2-d array First key is the namespace, second is the DB key,...
static getSelectFields()
Fields that LinkCache needs to select.
execute()
Do the query and add the results to the LinkCache object.
getSize()
Returns the size of the batch.
constructSet( $prefix, $db)
Construct a WHERE clause which will match all the given titles.
wfGetDB( $db, $groups=[], $wiki=false)
Get a Database object.
wfDebug( $text, $dest='all', array $context=[])
Sends a line to the debug log if enabled or, optionally, to a comment in output.
$caller
For debugging which method is using this class.
$data
2-d array, first index namespace, second index dbkey, value arbitrary
doQuery()
Perform the existence test query, return a result wrapper with page_id fields.
executeInto(&$cache)
Do the query and add the results to a given LinkCache object Return an array mapping PDBK to ID.
isEmpty()
Returns true if no pages have been added, false otherwise.
addResultToCache( $cache, $res)
Add a result wrapper containing IDs and titles to a LinkCache object.
Represents a page (or page fragment) title within MediaWiki.