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

ServiceProvider::make()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 20
Code Lines 13

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 1
eloc 13
nc 1
nop 1
dl 0
loc 20
rs 9.8333
c 0
b 0
f 0
1
<?php
2
/**
3
 * Created by PhpStorm.
4
 * User: thalesmartins
5
 * Date: 03/12/2018
6
 * Time: 18:17
7
 */
8
9
namespace Saci\Console\Infrastructure\Domain\Services\PhpClass;
10
11
12
use cristianoc72\codegen\model\GenerateableInterface;
13
use cristianoc72\codegen\model\PhpClass;
14
use cristianoc72\codegen\model\PhpConstant;
15
use cristianoc72\codegen\model\PhpMethod;
16
use cristianoc72\codegen\model\PhpProperty;
17
use Saci\Console\Domain\Services\PhpClass as PhpClassInterface;
18
19
class ServiceProvider extends PhpClass implements PhpClassInterface
20
{
21
22
    public function make(string $moduleName): GenerateableInterface
23
    {
24
        $this
25
            ->setQualifiedName("Saci\\{$moduleName}\\{$moduleName}ServiceProvider")
26
            ->declareUses(
27
                'App\\Model\\Core\\Container\\ServiceProvider\\ServiceProvider'
28
            )
29
            ->setParentClassName('ServiceProvider')
30
            ->setMethod(
31
                PhpMethod::create('register')
32
            )
33
            ->setProperty(
34
                PhpProperty::create('provides')
35
                ->setVisibility('protected')
36
                ->setType('array')
37
                ->setValue(PhpConstant::create('[]', [], true))
38
            );
39
40
41
        return $this;
42
    }
43
}