abstract class AbstractQueuedJob implements QueuedJob (View source)

A base implementation of a queued job that provides some convenience for implementations

This implementation assumes that when you created your job class, you initialised the jobData with relevant variables needed to process() your job later on in execution. If you do not, please ensure you do before you queueJob() the job, to ensure the signature that is generated is 'correct'.

Properties

protected stdClass $jobData
protected array $messages
protected int $totalSteps
protected int $currentStep
protected bool $isComplete

Methods

public
__construct($params = array())

Extensions can have a construct but don't have too.

public
string
getTitle()

No description

protected
setObject(DataObject $object, string $name = 'Object')

Sets a data object for persisting by adding its id and type to the serialised vars

protected
DataObject|void
getObject(string $name = 'Object')

No description

public
string
getSignature()

Return a signature for this queued job

protected
string
randomSignature()

Generate a somewhat random signature

public
getJobType()

By default jobs should just go into the default processing queue

public
setup()

Performs setup tasks the first time this job is run.

public
prepareForRestart()

Run when an already setup job is being restarted.

public
process()

Do some processing yourself!

public
jobFinished()

Method for determining whether the job is finished - you may override it if there's more to it than just this

public
afterComplete()

Called when the job is determined to be 'complete'

public
getJobData()

No description

public
setJobData(int $totalSteps, int $currentStep, bool $isComplete, stdClass $jobData, array $messages)

No description

public
array|null
getCustomConfig()

Gets custom config settings to use when running the job.

public
setCustomConfig(array $config)

Sets custom config settings to use when the job is run.

public
addMessage(string $message, string $severity = 'INFO')

No description

public
__set(mixed $name, mixed $value)

Convenience methods for setting and getting job data

public
mixed
__get(mixed $name)

Retrieve some job data

Details

__construct($params = array())

Extensions can have a construct but don't have too.

Without a construct, it's impossible to create a job in the CMS

Parameters

$params

abstract string getTitle()

No description

Return Value

string

protected setObject(DataObject $object, string $name = 'Object')

Sets a data object for persisting by adding its id and type to the serialised vars

Parameters

DataObject $object
string $name

A name to give it, if you want to store more than one

protected DataObject|void getObject(string $name = 'Object')

No description

Parameters

string $name

Return Value

DataObject|void

string getSignature()

Return a signature for this queued job

Return Value

string

protected string randomSignature()

Generate a somewhat random signature

useful if you're want to make sure something is always added

Return Value

string

getJobType()

By default jobs should just go into the default processing queue

setup()

Performs setup tasks the first time this job is run.

This is only executed once for every job. If you want to run something on every job restart, use the prepareForRestart method.

prepareForRestart()

Run when an already setup job is being restarted.

abstract process()

Do some processing yourself!

jobFinished()

Method for determining whether the job is finished - you may override it if there's more to it than just this

afterComplete()

Called when the job is determined to be 'complete'

getJobData()

No description

setJobData(int $totalSteps, int $currentStep, bool $isComplete, stdClass $jobData, array $messages)

No description

Parameters

int $totalSteps
int $currentStep
bool $isComplete
stdClass $jobData
array $messages

array|null getCustomConfig()

Gets custom config settings to use when running the job.

Return Value

array|null

setCustomConfig(array $config)

Sets custom config settings to use when the job is run.

Parameters

array $config

addMessage(string $message, string $severity = 'INFO')

No description

Parameters

string $message
string $severity

__set(mixed $name, mixed $value)

Convenience methods for setting and getting job data

Parameters

mixed $name
mixed $value

mixed __get(mixed $name)

Retrieve some job data

Parameters

mixed $name

Return Value

mixed