AddUserToGroupCommandHandler   A
last analyzed

Complexity

Total Complexity 2

Size/Duplication

Total Lines 19
Duplicated Lines 0 %

Test Coverage

Coverage 100%

Importance

Changes 1
Bugs 0 Features 0
Metric Value
wmc 2
eloc 9
c 1
b 0
f 0
dl 0
loc 19
ccs 9
cts 9
cp 1
rs 10

2 Methods

Rating   Name   Duplication   Size   Complexity  
A __construct() 0 4 1
A handle() 0 8 1
1
<?php
2
3
namespace ProyectoTAU\TAU\Module\Administration\Group\Application\addUserToGroup;
4
5
use ProyectoTAU\TAU\Module\Administration\User\Domain\UserRepository;
6
use ProyectoTAU\TAU\Module\Administration\Group\Domain\GroupRepository;
7
8
final class AddUserToGroupCommandHandler
9
{
10
    private $userRepository;
11
    private $groupRepository;
12
13 10
    public function __construct(UserRepository $user, GroupRepository $group)
14
    {
15 10
        $this->userRepository = $user;
16 10
        $this->groupRepository = $group;
17 10
    }
18
19 9
    public function handle(AddUserToGroupCommand $command)
20
    {
21 9
        $user = $this->userRepository->read($command->userId);
22 9
        $group = $this->groupRepository->read($command->groupId);
23
24 9
        $this->groupRepository->addUserToGroup($user, $group);
25
26 9
        $group->addUser($user);
27
        //$user->addGroup($group); //TODO: Here or in $group->addUser($user) itself? One or two events must be raised? Infinite loop?
28 9
    }
29
}
30