/** * @param Fetchable $fetchable * @param Fetcher $fetcher * @throws \Exception */ public function __construct(Fetchable $fetchable, Fetcher $fetcher) { if ($fetcher->getNbByPage() <= 0) { throw new \Exception('Fetcher should have a limit of results per page'); } if ($fetcher->hasSort()) { throw new \Exception('Sorted fetcher is not supported'); } $this->fetchable = $fetchable; $this->fetcher = $fetcher; $this->fetcher->setPage(1); $this->fetcher->sortById(Fetcher::SORT_ASC); }