/** * {@inheritdoc} */ public function getTimeline(ComponentInterface $subject, array $options = array()) { $resolver = new OptionsResolver(); $resolver->setDefaults(array('page' => 1, 'max_per_page' => 10, 'type' => TimelineInterface::TYPE_TIMELINE, 'context' => 'GLOBAL', 'filter' => true, 'paginate' => false)); $options = $resolver->resolve($options); $token = new Pager\PagerToken($this->getRedisKey($subject, $options['context'], $options['type'])); return $this->resultBuilder->fetchResults($token, $options['page'], $options['max_per_page'], $options['filter'], $options['paginate']); }
/** * @param array $options pager, filter * * @return array|object */ public function execute(array $options = array()) { $qb = $this->createQueryBuilder(); $resolver = new OptionsResolver(); $resolver->setDefaults(array('filter' => true, 'paginate' => false)); $options = $resolver->resolve($options); return $this->resultBuilder->fetchResults($qb, $this->page, $this->maxPerPage, $options['filter'], $options['paginate']); }
/** * {@inheritdoc} */ public function getSubjectActions(ComponentInterface $subject, array $options = array()) { $resolver = new OptionsResolver(); $resolver->setDefaults(array('page' => 1, 'max_per_page' => 10, 'filter' => true, 'paginate' => false)); $options = $resolver->resolve($options); $token = new Pager\PagerToken($this->getSubjectRedisKey($subject)); return $this->resultBuilder->fetchResults($token, $options['page'], $options['max_per_page'], $options['filter'], $options['paginate']); }