<?php declare(strict_types=1);

namespace App\Engine\AdministratorUser;

/**
 * @extends  \Doctrine\Bundle\DoctrineBundle\Repository\ServiceEntityRepository<AdministratorUser>
 * @implements \App\Engine\Admin\AdminRepositoryInterface<AdministratorUser>
 */
class AdministratorUserRepository extends \Doctrine\Bundle\DoctrineBundle\Repository\ServiceEntityRepository implements \App\Engine\Admin\AdminRepositoryInterface
{

    public function __construct(\Doctrine\Persistence\ManagerRegistry $registry)
    {
        parent::__construct($registry, \App\Engine\AdministratorUser\AdministratorUser::class);
    }

    public function loadAll(int $limit = null, int $offset = 0): array
    {
        return $this->createQueryBuilder("administratorUser")
            ->orderBy("administratorUser.id", "DESC")
            ->setFirstResult($offset)
            ->setMaxResults($limit)
            ->getQuery()
            ->getResult();
    }
}
