Passed
Push — main ( 0545d9...29d231 )
by Proyecto
03:14
created

InMemoryGroupRepository::update()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 3
Code Lines 1

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 0
CRAP Score 2

Importance

Changes 1
Bugs 0 Features 0
Metric Value
eloc 1
c 1
b 0
f 0
dl 0
loc 3
ccs 0
cts 3
cp 0
rs 10
cc 1
nc 1
nop 3
crap 2
1
<?php
2
3
namespace ProyectoTAU\TAU\Module\Administration\Group\Infrastructure;
4
5
use ProyectoTAU\TAU\Common\InMemoryRepository;
6
use ProyectoTAU\TAU\Module\Administration\User\Domain\User;
7
use ProyectoTAU\TAU\Module\Administration\Group\Domain\Group;
8
use ProyectoTAU\TAU\Module\Administration\Role\Domain\Role;
9
use ProyectoTAU\TAU\Module\Administration\Group\Domain\GroupRepository;
10
11
class InMemoryGroupRepository implements GroupRepository
12
{
13
    public function clear(): void
14
    {
15
        InMemoryRepository::getInstance()->clearGroup();
16
    }
17
18
    public function create(Group $group): void
19
    {
20
        InMemoryRepository::getInstance()->createGroup(clone $group);
21
    }
22
23
    public function read($id): Group
24
    {
25
        return InMemoryRepository::getInstance()->readGroup($id);
26
    }
27
28
    public function update($id, $name, $desc): void
29
    {
30
        InMemoryRepository::getInstance()->updateGroup($id, $name, $desc);
31
    }
32
33
    public function delete($id): void
34
    {
35
        InMemoryRepository::getInstance()->deleteGroup($id);
36
    }
37
38
    public function addUserToGroup(User $user, Group $group): void
39
    {
40
        InMemoryRepository::getInstance()->addUserToGroup($user, $group);
41
    }
42
43
    public function removeUserFromGroup(User $user, Group $group): void
44
    {
45
        InMemoryRepository::getInstance()->removeUserToGroup($user, $group);
46
    }
47
48
    public function getUsersFromGroup(Group $group): array
49
    {
50
        return InMemoryRepository::getInstance()->getUsersFromGroup($group);
51
    }
52
53
    public function addRoleToGroup(Role $role, Group $group): void
54
    {
55
        InMemoryRepository::getInstance()->addRoleToGroup($role, $group);
56
    }
57
58
    public function removeRoleFromGroup(Role $role, Group $group): void
59
    {
60
        InMemoryRepository::getInstance()->removeRoleToGroup($role, $group);
61
    }
62
63
    public function getRolesFromGroup(Group $group): array
64
    {
65
        return InMemoryRepository::getInstance()->getRolesFromGroup($group);
66
    }
67
}
68