MediaWiki  master
DoubleRedirectJob Class Reference

Job to fix double redirects after moving a page. More...

Inheritance diagram for DoubleRedirectJob:
Collaboration diagram for DoubleRedirectJob:

Public Member Functions

 __construct (Title $title, array $params)
 
 getUser ()
 Get a user object for doing edits, from a request-lifetime cache False will be returned if the user name specified in the 'double-redirect-fixer' message is invalid. More...
 
 run ()
 
- Public Member Functions inherited from Job
 __construct ( $command, $params=null)
 
 allowRetries ()
 
 getDeduplicationInfo ()
 Subclasses may need to override this to make duplication detection work. More...
 
 getLastError ()
 
 getMetadata ( $field=null)
 
 getParams ()
 
 getQueuedTimestamp ()
 
 getReadyTimestamp ()
 
 getReleaseTimestamp ()
 
 getRequestId ()
 
 getRootJobParams ()
 
 getTitle ()
 
 getType ()
 
 hasExecutionFlag ( $flag)
 
 hasRootJobParams ()
 
 ignoreDuplicates ()
 Whether the queue should reject insertion of this job if a duplicate exists. More...
 
 isRootJob ()
 
 setMetadata ( $field, $value)
 
 teardown ( $status)
 
 toString ()
 
 workItemCount ()
 
- Public Member Functions inherited from RunnableJob
 tearDown ( $status)
 Do any final cleanup after run(), deferred updates, and all DB commits happen. More...
 

Static Public Member Functions

static fixRedirects ( $reason, $redirTitle, $destTitle=false)
 Insert jobs into the job queue to fix redirects to the given title. More...
 
static getFinalDestination ( $title)
 Get the final destination of a redirect. More...
 
- Static Public Member Functions inherited from Job
static factory ( $command, $params=[])
 Create the appropriate object to handle a specific job. More...
 
static newRootJobParams ( $key)
 Get "root job" parameters for a task. More...
 

Private Attributes

Title $redirTitle
 The title which has changed, redirects pointing to this title are fixed. More...
 

Static Private Attributes

static User $user
 

Additional Inherited Members

- Public Attributes inherited from Job
string $command
 
array $metadata = []
 Additional queue metadata. More...
 
array $params
 Array of job parameters. More...
 
- Protected Member Functions inherited from Job
 addTeardownCallback ( $callback)
 
 setLastError ( $error)
 
- Protected Attributes inherited from Job
string $error
 Text for error that occurred last. More...
 
int $executionFlags = 0
 Bitfield of JOB_* class constants. More...
 
bool $removeDuplicates = false
 Expensive jobs may set this to true. More...
 
callable [] $teardownCallbacks = []
 
Title $title
 

Detailed Description

Job to fix double redirects after moving a page.

Definition at line 31 of file DoubleRedirectJob.php.

Constructor & Destructor Documentation

◆ __construct()

DoubleRedirectJob::__construct ( Title  $title,
array  $params 
)
Parameters
Title$title
array$paramsExpected to contain these elements:
  • 'redirTitle' => string The title that changed and should be fixed.
  • 'reason' => string Reason for the change, can be "move" or "maintenance". Used as a suffix for the message keys "double-redirect-fixed-move" and "double-redirect-fixed-maintenance". ]

Definition at line 50 of file DoubleRedirectJob.php.

References Title\newFromText().

Member Function Documentation

◆ fixRedirects()

static DoubleRedirectJob::fixRedirects (   $reason,
  $redirTitle,
  $destTitle = false 
)
static

Insert jobs into the job queue to fix redirects to the given title.

Parameters
string$reasonThe reason for the fix, see message "double-redirect-fixed-<reason>"
Title$redirTitleThe title which has changed, redirects pointing to this title are fixed
bool$destTitleNot used

Definition at line 63 of file DoubleRedirectJob.php.

References $res, Job\$title, as, DB_MASTER, Title\getDBkey(), Title\getNamespace(), Title\getPrefixedDBkey(), Title\makeTitle(), JobQueueGroup\singleton(), and wfGetDB().

Referenced by MovePageForm\doSubmit().

◆ getFinalDestination()

static DoubleRedirectJob::getFinalDestination (   $title)
static

Get the final destination of a redirect.

Parameters
Title$title
Returns
Title|bool The final Title after following all redirects, or false if the page is not a redirect or the redirect loops.

Definition at line 187 of file DoubleRedirectJob.php.

References Job\$title, DB_MASTER, Title\getDBkey(), Title\getNamespace(), Title\getPrefixedDBkey(), Title\isExternal(), Title\makeTitle(), wfDebug(), and wfGetDB().

◆ getUser()

DoubleRedirectJob::getUser ( )

Get a user object for doing edits, from a request-lifetime cache False will be returned if the user name specified in the 'double-redirect-fixer' message is invalid.

Returns
User|bool

Definition at line 242 of file DoubleRedirectJob.php.

References $user, $username, User\newFromName(), and wfMessage().

Referenced by run().

◆ run()

Member Data Documentation

◆ $redirTitle

Title DoubleRedirectJob::$redirTitle
private

The title which has changed, redirects pointing to this title are fixed.

Definition at line 36 of file DoubleRedirectJob.php.

◆ $user

User DoubleRedirectJob::$user
staticprivate

Definition at line 39 of file DoubleRedirectJob.php.

Referenced by run().


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