Passed
Push — master ( 2ee0d1...1e8995 )
by Tomasz
03:21
created

UseCase::__construct()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 3
Code Lines 1

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 1
eloc 1
nc 1
nop 1
dl 0
loc 3
rs 10
c 0
b 0
f 0
1
<?php
2
3
declare(strict_types = 1);
4
5
namespace Aggrego\Domain\Api\Domain\Query\GetUnit;
6
7
use Aggrego\Domain\Api\Application\Model\Unit\Repository;
8
9
class UseCase
10
{
11
    /** @var Repository */
12
    private $repository;
13
14
    public function __construct(Repository $repository)
15
    {
16
        $this->repository = $repository;
17
    }
18
19
    public function handle(Query $query): Response
20
    {
21
        $key = $query->getKey();
22
        $profile = $query->getProfile();
23
24
        $unit = $this->repository->findUnit($key, $profile);
25
        if (!is_null($unit)) {
26
            return Response::createValidResponse($unit);
27
        } else {
28
            return Response::createInvalidResponse($query);
29
        }
30
    }
31
}
32