private function getJob() { $job = new ESJob('job_id'); // Using the dummy job $job->setClass('ClassCentral\\ElasticSearchBundle\\Scheduler\\DummyJob'); $job->setRunDate(new \DateTime()); $job->setCreated(new \DateTime()); $job->setJobType('email'); $job->setArgs(array('user_id' => 5)); return $job; }
/** * Saves the job in elastic search * @param \DateTime $date * @param $class * @param $arguments */ public function schedule(\DateTime $date, $type, $class, $arguments = array(), $userId = -1) { $logger = $this->container->get('monolog.logger.scheduler'); $indexer = $this->container->get('es_indexer'); $esScheduler = $this->container->get('es_scheduler'); $id = md5(uniqid('', true)); $job = new ESJob($id); $job->setRunDate($date); $job->setClass($class); $job->setArgs($arguments); $job->setJobType($type); $job->setUserId($userId); // Check if the job already exists if ($esScheduler->jobExists($job)) { $logger->info("SCHEDULER : job already exists", ESJob::getArrayFromObj($job)); return false; } else { $indexer->index($job); $logger->info("SCHEDULER : job created with id {$id}", ESJob::getArrayFromObj($job)); return $id; } }