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

RemoveGroupFromRoleCommandHandler::handle()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 8
Code Lines 4

Duplication

Lines 0
Ratio 0 %

Importance

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