MediaWiki REL1_40
JobSpecification Class Reference

Job queue task description base code. More...

Inherits IJobSpecification.

Collaboration diagram for JobSpecification:

Public Member Functions

 __construct ( $type, array $params, array $opts=[], PageReference $page=null)
 
 getDeduplicationInfo ()
 Subclasses may need to override this to make duplication detection work.
 
 getParams ()
 
 getReleaseTimestamp ()
 
 getRootJobParams ()
 
 getTitle ()
 
 getType ()
 
 hasRootJobParams ()
 
 ignoreDuplicates ()
 
 isRootJob ()
 
 toSerializableArray ()
 

Static Public Member Functions

static newFromArray (array $map)
 

Protected Member Functions

 validateParams (array $params)
 

Protected Attributes

array $opts
 
PageReference $page
 
array $params
 Array of job parameters or false if none.
 
string $type
 

Detailed Description

Job queue task description base code.

Example usage:

'null',
[ 'lives' => 1, 'usleep' => 100, 'pi' => 3.141569 ],
[ 'removeDuplicates' => 1 ]
);
MediaWikiServices::getInstance()->getJobQueueGroup()->push( $job )
Job queue task description base code.
if(count( $args)< 1) $job
Since
1.23

Definition at line 43 of file JobSpecification.php.

Constructor & Destructor Documentation

◆ __construct()

JobSpecification::__construct ( $type,
array $params,
array $opts = [],
PageReference $page = null )
Parameters
string$type
array$paramsMap of key/values
array$optsMap of key/values 'removeDuplicates' key - whether to remove duplicate jobs 'removeDuplicatesIgnoreParams' key - array with parameters to ignore for deduplication
PageReference | null$page

Definition at line 64 of file JobSpecification.php.

References $type, MediaWiki\Page\PageReference\getDBkey(), MediaWiki\Page\PageReference\getNamespace(), NS_SPECIAL, and validateParams().

Member Function Documentation

◆ getDeduplicationInfo()

JobSpecification::getDeduplicationInfo ( )

Subclasses may need to override this to make duplication detection work.

The resulting map conveys everything that makes the job unique. This is only checked if ignoreDuplicates() returns true, meaning that duplicate jobs are supposed to be ignored.

Returns
array Map of key/values

Implements IJobSpecification.

Definition at line 129 of file JobSpecification.php.

References getParams(), and getType().

◆ getParams()

JobSpecification::getParams ( )
Returns
array Parameters that specify sources, targets, and options for execution

Implements IJobSpecification.

Definition at line 115 of file JobSpecification.php.

Referenced by getDeduplicationInfo().

◆ getReleaseTimestamp()

JobSpecification::getReleaseTimestamp ( )
Returns
int|null UNIX timestamp to delay running this job until, otherwise null

Implements IJobSpecification.

Definition at line 119 of file JobSpecification.php.

References wfTimestampOrNull().

◆ getRootJobParams()

JobSpecification::getRootJobParams ( )
See also
JobQueue::deduplicateRootJob()
Returns
array
Since
1.26

Implements IJobSpecification.

Definition at line 150 of file JobSpecification.php.

◆ getTitle()

JobSpecification::getTitle ( )
Deprecated
since 1.37.
Returns
Title|null

Definition at line 110 of file JobSpecification.php.

References wfDeprecated().

◆ getType()

JobSpecification::getType ( )
Returns
string Job type that defines what sort of changes this job makes

Implements IJobSpecification.

Definition at line 102 of file JobSpecification.php.

References $type.

Referenced by getDeduplicationInfo().

◆ hasRootJobParams()

JobSpecification::hasRootJobParams ( )
See also
JobQueue::deduplicateRootJob()
Returns
bool
Since
1.22

Implements IJobSpecification.

Definition at line 157 of file JobSpecification.php.

Referenced by isRootJob().

◆ ignoreDuplicates()

JobSpecification::ignoreDuplicates ( )
Returns
bool Whether only one of each identical set of jobs should be run

Implements IJobSpecification.

Definition at line 125 of file JobSpecification.php.

◆ isRootJob()

JobSpecification::isRootJob ( )
See also
JobQueue::deduplicateRootJob()
Returns
bool Whether this is job is a root job

Implements IJobSpecification.

Definition at line 162 of file JobSpecification.php.

References hasRootJobParams().

◆ newFromArray()

static JobSpecification::newFromArray ( array $map)
static
Parameters
array$mapField/value map
Returns
JobSpecification
Since
1.25

Definition at line 187 of file JobSpecification.php.

◆ toSerializableArray()

JobSpecification::toSerializableArray ( )
Returns
array Field/value map that can immediately be serialized
Since
1.25

Definition at line 170 of file JobSpecification.php.

References $type.

◆ validateParams()

JobSpecification::validateParams ( array $params)
protected
Parameters
array$params

Definition at line 92 of file JobSpecification.php.

References validateParams().

Referenced by __construct(), and validateParams().

Member Data Documentation

◆ $opts

array JobSpecification::$opts
protected

Definition at line 54 of file JobSpecification.php.

◆ $page

PageReference JobSpecification::$page
protected

Definition at line 51 of file JobSpecification.php.

◆ $params

array JobSpecification::$params
protected

Array of job parameters or false if none.

Definition at line 48 of file JobSpecification.php.

◆ $type

string JobSpecification::$type
protected

Definition at line 45 of file JobSpecification.php.


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