Exemplo n.º 1
0
 public function testJobTransitionEvent()
 {
     $mock_transition = $this->getMock('LaterJob\\Model\\Activity\\Transition');
     $mock_job = $this->getMockBuilder('LaterJob\\Job')->disableOriginalConstructor()->getMock();
     $event = new JobTransitionEvent($mock_job, $mock_transition);
     $this->assertEquals($mock_transition, $event->getTransition());
     $this->assertEquals($mock_job, $event->getJob());
 }
Exemplo n.º 2
0
 /**
  *  Save the job to the database
  *
  *  @access public
  *  @return boolean
  *  @param JobTransitionEvent $event
  */
 protected function save(JobTransitionEvent $event)
 {
     try {
         $obj = $event->getTransition();
         $job = $event->getJob();
         $result = $this->gateway->updateQuery()->start()->addColumn('state_id', $obj->getState())->addColumn('retry_count', $job->getRetryCount())->addColumn('retry_last', $job->getStorage()->getRetryLast())->where()->filterByJob($obj->getJob())->end()->update();
         # assign the id to the object
         $obj->getTransitionId($this->gateway->lastInsertId());
         if ($result === false) {
             throw new LaterJobException('Unable to save transition for Job:: ' . $obj->getJob() . ' It already exists');
         }
     } catch (DBALGatewayException $e) {
         throw new LaterJobException($e->getMessage(), 0, $e);
     }
 }
Exemplo n.º 3
0
 /**
  *  Log events that occur from job
  *
  *  @access public
  *  @param JobTransitionEvent $event 
  */
 public function logJobEvent(JobTransitionEvent $event)
 {
     $this->log->info($event->getTransition()->getMessage(), array('job_id' => $event->getJob()->getId()));
 }
Exemplo n.º 4
0
 /**
  *  Save the transition to the database
  *
  *  @access public
  *  @return boolean
  *  @param JobTransitionEvent $event
  */
 protected function saveTransition(JobTransitionEvent $event)
 {
     try {
         $obj = $event->getTransition();
         $result = $this->gateway->insertQuery()->start()->addColumn('job_id', $obj->getJob())->addColumn('state_id', $obj->getState())->addColumn('dte_occured', $obj->getOccured())->addColumn('transition_msg', $obj->getMessage())->addColumn('process_handle', $obj->getProcessHandle())->end()->insert();
         # assign the id to the object
         $obj->setTransitionId($this->gateway->lastInsertId());
         if ($result === false) {
             throw new LaterJobException('Unable to save transition for Job:: ' . $obj->getJob() . ' It already exists');
         }
     } catch (DBALGatewayException $e) {
         throw new LaterJobException($e->getMessage(), 0, $e);
     }
 }
 /**
  *  Log events that occur from job
  *
  *  @access public
  *  @param JobTransitionEvent $event 
  */
 public function logJobEvent(JobTransitionEvent $event)
 {
     $this->output->writeln($event->getTransition()->getMessage() . ' ' . json_encode(array('job_id' => $event->getJob()->getId())));
 }