Passed
Push — master ( bd550c...32415d )
by Grupo
02:41
created

ClassMaker::__construct()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 4
Code Lines 2

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 1
eloc 2
nc 1
nop 2
dl 0
loc 4
rs 10
c 0
b 0
f 0
1
<?php
2
/**
3
 * Created by PhpStorm.
4
 * User: thalesmartins
5
 * Date: 03/12/2018
6
 * Time: 16:52
7
 */
8
9
namespace Saci\Console\Infrastructure\Domain\Services;
10
11
12
use cristianoc72\codegen\generator\CodeGenerator;
13
use Saci\Console\Domain\Entity\Module;
14
use Saci\Console\Domain\Services\PhpClass;
15
use Saci\Console\Domain\Services\ClassMaker as ClassMakerIterface;
16
17
class ClassMaker implements ClassMakerIterface
18
{
19
    /**
20
     * @var CodeGenerator
21
     */
22
    private $codeGenerator;
23
    /**
24
     * @var Module
25
     */
26
    private $module;
27
28
    /**
29
     * ClassMappingMaker constructor.
30
     * @param Module $module
31
     * @param CodeGenerator $codeGenerator
32
     */
33
    public function __construct(Module $module, CodeGenerator $codeGenerator)
34
    {
35
        $this->codeGenerator = $codeGenerator;
36
        $this->module = $module;
37
    }
38
39
    /**
40
     * @param PhpClass $phpClass
41
     * @return string
42
     */
43
    public function generate(PhpClass $phpClass)
44
    {
45
        $code = $phpClass->make($this->module->getName());
46
47
        return $this->codeGenerator->generate($code);
48
    }
49
}