Test Failed
Push — main ( 2036f5...f2d0d3 )
by Proyecto
07:50
created

RemoveRoleFromGroupCommandHandler::__construct()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 4
Code Lines 2

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
eloc 2
c 1
b 0
f 0
dl 0
loc 4
rs 10
cc 1
nc 1
nop 2
1
<?php
2
3
namespace ProyectoTAU\TAU\Module\Administration\Group\Application\removeRoleFromGroup;
4
5
use ProyectoTAU\TAU\Module\Administration\Role\Domain\RoleRepository;
6
use ProyectoTAU\TAU\Module\Administration\Group\Domain\GroupRepository;
7
8
final class RemoveRoleFromGroupCommandHandler
9
{
10
    private $roleRepository;
11
    private $groupRepository;
12
13
    public function __construct(RoleRepository $role, GroupRepository $group)
14
    {
15
        $this->roleRepository = $role;
16
        $this->groupRepository = $group;
17
    }
18
19
    public function handle(RemoveRoleFromGroupCommand $command)
20
    {
21
        $role = $this->roleRepository->read($command->roleId);
22
        $group = $this->groupRepository->read($command->groupId);
23
24
        $this->groupRepository->removeRoleFromGroup($role, $group); //TODO: remove must use ID and GroupRoleRepository
25
26
        $group->removeRole($role);
27
    }
28
}
29