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;
     }
 }