/** * Public pagination method with knppaginator instance * * @\Mmoreram\ControllerExtraBundle\Annotation\Paginator( * class = { * "factory" = "Mmoreram\ControllerExtraBundle\Tests\FakeBundle\Factory\FakeFactory", * "method" = "createNonStatic", * "static" = false * }, * page = "~page~", * limit = "~limit~", * orderBy = { * { "x", "~field~", "~dir~", { * "1" = "ASC", * "2" = "DESC", * }} * } * ) * * @\Mmoreram\ControllerExtraBundle\Annotation\JsonResponse() */ public function paginatorKNPPaginatorAction(PaginationInterface $paginator) { return array('count' => $paginator->getTotalItemCount()); }
/** * Constructor. * @param PaginationInterface $pagination */ public function __construct(PaginationInterface $pagination) { $this->metadata = ['page' => (int) $pagination->getCurrentPageNumber(), 'pages' => (int) $pagination->getPageCount(), 'limit' => (int) $pagination->getItemNumberPerPage(), 'total' => (int) $pagination->getTotalItemCount()]; $this->items = $pagination->getItems(); }