Passed
Push — main ( 3fc6af...0545d9 )
by Proyecto
08:13
created

InMemoryRoleRepository   A

Complexity

Total Complexity 11

Size/Duplication

Total Lines 55
Duplicated Lines 0 %

Test Coverage

Coverage 100%

Importance

Changes 1
Bugs 0 Features 0
Metric Value
wmc 11
eloc 12
c 1
b 0
f 0
dl 0
loc 55
ccs 30
cts 30
cp 1
rs 10

11 Methods

Rating   Name   Duplication   Size   Complexity  
A clear() 0 3 1
A getModulesFromRole() 0 3 1
A create() 0 3 1
A addModuleToRole() 0 3 1
A addGroupToRole() 0 3 1
A removeGroupFromRole() 0 3 1
A delete() 0 3 1
A getGroupsFromRole() 0 3 1
A removeModuleFromRole() 0 3 1
A read() 0 3 1
A update() 0 3 1
1
<?php
2
3
namespace ProyectoTAU\TAU\Module\Administration\Role\Infrastructure;
4
5
use ProyectoTAU\TAU\Common\InMemoryRepository;
6
use ProyectoTAU\TAU\Module\Administration\Group\Domain\Group;
7
use ProyectoTAU\TAU\Module\Administration\Module\Domain\Module;
8
use ProyectoTAU\TAU\Module\Administration\Role\Domain\Role;
9
use ProyectoTAU\TAU\Module\Administration\Role\Domain\RoleRepository;
10
11
class InMemoryRoleRepository implements RoleRepository
12
{
13 16
    public function clear(): void
14
    {
15 16
        InMemoryRepository::getInstance()->clearRole();
16 16
    }
17
18 16
    public function create(Role $role): void
19
    {
20 16
        InMemoryRepository::getInstance()->createRole(clone $role);
21 16
    }
22
23 14
    public function read($id): Role
24
    {
25 14
        return InMemoryRepository::getInstance()->readRole($id);
26
    }
27
28 1
    public function update($id, $name, $desc): void
29
    {
30 1
        InMemoryRepository::getInstance()->updateRole($id, $name, $desc);
31 1
    }
32
33 1
    public function delete($id): void
34
    {
35 1
        InMemoryRepository::getInstance()->deleteRole($id);
36 1
    }
37
38 3
    public function addGroupToRole(Group $group, Role $role): void
39
    {
40 3
        InMemoryRepository::getInstance()->addGroupToRole($group, $role);
41 3
    }
42
43 1
    public function removeGroupFromRole(Group $group, Role $role): void
44
    {
45 1
        InMemoryRepository::getInstance()->removeGroupFromRole($group, $role);
46 1
    }
47
48 3
    public function getGroupsFromRole(Role $role): array
49
    {
50 3
        return InMemoryRepository::getInstance()->getGroupsFromRole($role);
51
    }
52
53 3
    public function addModuleToRole(Module $module, Role $role): void
54
    {
55 3
        InMemoryRepository::getInstance()->addModuleToRole($module, $role);
56 3
    }
57
58 1
    public function removeModuleFromRole(Module $module, Role $role): void
59
    {
60 1
        InMemoryRepository::getInstance()->removeModuleFromRole($module, $role);
61 1
    }
62
63 3
    public function getModulesFromRole(Role $role): array
64
    {
65 3
        return InMemoryRepository::getInstance()->getModulesFromRole($role);
66
    }
67
}
68