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

InMemoryModuleRepository   A

Complexity

Total Complexity 8

Size/Duplication

Total Lines 40
Duplicated Lines 0 %

Test Coverage

Coverage 0%

Importance

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

8 Methods

Rating   Name   Duplication   Size   Complexity  
A getRolesFromModule() 0 3 1
A clear() 0 3 1
A read() 0 3 1
A create() 0 3 1
A delete() 0 3 1
A addRoleToModule() 0 3 1
A removeRoleFromModule() 0 3 1
A update() 0 3 1
1
<?php
2
3
namespace ProyectoTAU\TAU\Module\Administration\Module\Infrastructure;
4
5
use ProyectoTAU\TAU\Common\InMemoryRepository;
6
use ProyectoTAU\TAU\Module\Administration\Role\Domain\Role;
7
use ProyectoTAU\TAU\Module\Administration\Module\Domain\Module;
8
use ProyectoTAU\TAU\Module\Administration\Module\Domain\ModuleRepository;
9
10
class InMemoryModuleRepository implements ModuleRepository
11
{
12
    public function clear(): void
13
    {
14
        InMemoryRepository::getInstance()->clearModule();
15
    }
16
17
    public function create(Module $module): void
18
    {
19
        InMemoryRepository::getInstance()->createModule(clone $module);
20
    }
21
22
    public function read($id): Module
23
    {
24
        return InMemoryRepository::getInstance()->readModule($id);
25
    }
26
27
    public function update($id, $name, $desc): void
28
    {
29
        InMemoryRepository::getInstance()->updateModule($id, $name, $desc);
30
    }
31
32
    public function delete($id): void
33
    {
34
        InMemoryRepository::getInstance()->deleteModule($id);
35
    }
36
37
    public function addRoleToModule(Role $role, Module $module): void
38
    {
39
        InMemoryRepository::getInstance()->addRoleToModule($role, $module);
40
    }
41
42
    public function removeRoleFromModule(Role $role, Module $module): void
43
    {
44
        InMemoryRepository::getInstance()->removeRoleFromModule($role, $module);
45
    }
46
47
    public function getRolesFromModule(Module $module): array
48
    {
49
        return InMemoryRepository::getInstance()->getRolesFromModule($module);
50
    }
51
}
52