public function recurring() { $this->out('Firing recurring event.'); //Event is deprecated $event = new Event('DelayedJobs.recurring', $this); $event->result = RecurringJobBuilder::retrieve(); EventManager::instance()->dispatch($event); $this->out(__('{0} jobs to queue', count($event->result)), 1, Shell::VERBOSE); foreach ($event->result as $job) { if (!$job instanceof Job) { $job = new Job($job + ['group' => 'Recurring', 'priority' => 100, 'maxRetries' => 5, 'runAt' => new Time('+30 seconds')]); } if (JobManager::instance()->isSimilarJob($job)) { $this->out(__(' <error>Already queued:</error> {0}', $job->getWorker()), 1, Shell::VERBOSE); continue; } $this->enqueue($job); $this->out(__(' <success>Queued:</success> {0}', $job->getWorker()), 1, Shell::VERBOSE); } }