public function testQueueListEvent() { $before = new DateTime(); $after = new DateTime(); $state = 1; $limit = 5; $offset = 3; $order = 'DESC'; $result = new \ArrayIterator(array()); $list = new QueueListEvent($offset, $limit, $state, $order, $before, $after); $list->setResult($result); $this->assertEquals($before, $list->getBefore()); $this->assertEquals($after, $list->getAfter()); $this->assertEquals($state, $list->getState()); $this->assertEquals($limit, $list->getLimit()); $this->assertEquals($offset, $list->getOffset()); $this->assertEquals($order, $list->getOrder()); $this->assertEquals($result, $list->getResult()); }
public function onList(QueueListEvent $event) { try { $query = $this->gateway->selectQuery()->start(); if ($event->getState() !== null) { $query->filterByState($event->getState()); } if ($event->getAfter() instanceof DateTime) { $query->filterByAddedAfter($event->getAfter()); } if ($event->getBefore() instanceof DateTime) { $query->filterByAddedBefore($event->getBefore()); } if ($event->getLimit() !== null) { $query->limit($event->getLimit()); } if ($event->getOffset() !== null) { $query->offset($event->getOffset()); } # set the order by the date added $query->orderByDateAdded($event->getOrder()); $event->setResult($query->end()->find()); } catch (DBALGatewayException $e) { throw new LaterJobException($e->getMessage(), 0, $e); } }
/** * Log events that occur from queue * * @access public * @param QueueListEvent $event */ public function logQueueListEvent(QueueListEvent $event) { $this->log->info('QueueListEvent:: Running Queue List ', array('limit' => $event->getLimit(), 'offset' => $event->getOffset(), 'before' => $event->getBefore(), 'after' => $event->getAfter(), 'order' => $event->getOrder(), 'state' => $event->getState())); }
/** * Log events that occur from queue * * @access public * @param QueueListEvent $event */ public function logQueueListEvent(QueueListEvent $event) { $this->output->writeln('QueueListEvent:: Running Queue List ' . json_encode(array('limit' => $event->getLimit(), 'offset' => $event->getOffset(), 'before' => $event->getBefore(), 'after' => $event->getAfter(), 'order' => $event->getOrder(), 'state' => $event->getState()))); }