public function __invoke(AbstractJob $job)
{
try {
$result = $this->doJob($job);
} catch (\Exception $ex) {
$result = $ex;
}
$job->setResult($result);
$job->save();
$this->invokeCallbacks($job);
return $job->getResult();
}