Repository::search()   A
last analyzed

Complexity

Conditions 2
Paths 2

Size

Total Lines 13
Code Lines 6

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 2
eloc 6
nc 2
nop 3
dl 0
loc 13
rs 10
c 0
b 0
f 0
1
<?php declare(strict_types=1);
2
3
namespace Rostenkowski\Doctrine\Repository;
4
5
6
use Doctrine\ORM\EntityRepository;
7
use Doctrine\ORM\Query;
8
use Doctrine\ORM\Tools\Pagination\Paginator;
9
use Rostenkowski\Doctrine\Query\QueryFactory;
10
11
class Repository extends EntityRepository implements RepositoryInterface
12
{
13
14
15
	public function search(QueryFactory $qf, bool $fetchJoinCollection = true, int $mode = Query::HYDRATE_OBJECT)
16
	{
17
		$query = $qf->create($this->_em);
18
19
		if ($p = $qf->getPaginator()) {
20
21
			$query->setFirstResult($p->getOffset());
22
			$query->setMaxResults($p->getItemsPerPage());
23
24
			return new Paginator($query, $fetchJoinCollection);
25
		}
26
27
		return $query->getResult($mode);
28
	}
29
30
}
31