Programming Language PHP
Namespace Oro\Component\MessageQueue\Job
Class Job
Method/Function addChildJob
Total Examples 1
1 code examples of PHP Oro\Component\MessageQueue\Job\Job::addChildJob extracted from open source projects
/**
* @return Job
*/
public function findOrCreateChildJob(string $jobName, Job $rootJob): ?Job
{
if (!$jobName) {
throw new \LogicException('Job name must not be empty');
}
$job = $this->getJobRepository()->findChildJobByName($jobName, $rootJob);
if ($job) {
return $job;
}
$job = $this->getJobRepository()->createJob();
$job->setStatus(Job::STATUS_NEW);
$job->setName($jobName);
$job->setCreatedAt(new \DateTime());
$job->setRootJob($rootJob);
$rootJob->addChildJob($job);
$job->setJobProgress(0);
$this->jobManager->saveJob($job);
return $job;
}