getResultType()) { return $this->getPager($qb->getQuery(), $query->getPage(), $query->getPageSize()); } elseif (BaseQuery::RESULT_TYPE_OBJECTS === $query->getResultType()) { return $qb->getQuery()->execute(); } return $qb; } /** * @param Query $query * @param int $page * @param int $maxPerPage * @return Pagerfanta */ private function getPager(Query $query, $page = 1, $maxPerPage = 25) { $paginator = new Pagerfanta(new DoctrineORMAdapter($query, false)); $paginator->setMaxPerPage($maxPerPage); $paginator->setCurrentPage($page); return $paginator; } }