MediaWiki  1.33.0
EnqueueJob Class Reference

Router job that takes jobs and enqueues them to their proper queues. More...

Inheritance diagram for EnqueueJob:
Collaboration diagram for EnqueueJob:

Public Member Functions

 __construct (Title $title, array $params)
 Callers should use the factory methods instead. More...
 
 run ()
 Run the job. More...
 
- 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)
 Do any final cleanup after run(), deferred updates, and all DB commits happen. More...
 
 toString ()
 
 workItemCount ()
 

Static Public Member Functions

static newFromJobsByDomain (array $jobsByDomain)
 
static newFromJobsByWiki (array $jobsByWiki)
 
static newFromLocalJobs ( $jobs)
 
- 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...
 

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

Router job that takes jobs and enqueues them to their proper queues.

This can be used for getting sets of multiple jobs or sets of jobs intended for multiple queues to be inserted more robustly. This is a single job that, upon running, enqueues the wrapped jobs. If some of those fail to enqueue then the EnqueueJob will be retried. Due to the possibility of duplicate enqueues, the wrapped jobs should be idempotent.

Since
1.25

Definition at line 35 of file EnqueueJob.php.

Constructor & Destructor Documentation

◆ __construct()

EnqueueJob::__construct ( Title  $title,
array  $params 
)

Callers should use the factory methods instead.

Parameters
Title$title
array$paramsJob parameters

Definition at line 42 of file EnqueueJob.php.

References Job\$params, and Job\$title.

Member Function Documentation

◆ newFromJobsByDomain()

static EnqueueJob::newFromJobsByDomain ( array  $jobsByDomain)
static
Parameters
array$jobsByDomainMap of (wiki => JobSpecification list)
Returns
EnqueueJob

Definition at line 62 of file EnqueueJob.php.

References $job, as, Title\makeTitle(), and NS_SPECIAL.

Referenced by newFromJobsByWiki(), and newFromLocalJobs().

◆ newFromJobsByWiki()

static EnqueueJob::newFromJobsByWiki ( array  $jobsByWiki)
static
Parameters
array$jobsByWiki
Returns
EnqueueJob
Deprecated:
Since 1.33; use newFromJobsByDomain()

Definition at line 94 of file EnqueueJob.php.

References newFromJobsByDomain().

◆ newFromLocalJobs()

static EnqueueJob::newFromLocalJobs (   $jobs)
static
Parameters
JobSpecification | JobSpecification[]$jobs
Returns
EnqueueJob

Definition at line 50 of file EnqueueJob.php.

References WikiMap\getCurrentWikiDbDomain(), and newFromJobsByDomain().

◆ run()

EnqueueJob::run ( )

Run the job.

Returns
bool Success

Reimplemented from Job.

Definition at line 98 of file EnqueueJob.php.

References as, JobSpecification\newFromArray(), and JobQueueGroup\singleton().


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