Configuration   A
last analyzed

Complexity

Total Complexity 4

Size/Duplication

Total Lines 38
Duplicated Lines 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
wmc 4
eloc 15
c 1
b 0
f 0
dl 0
loc 38
rs 10

4 Methods

Rating   Name   Duplication   Size   Complexity  
A execute() 0 5 1
A __construct() 0 6 1
A configure() 0 5 1
A launch() 0 7 1
1
<?php
2
declare(strict_types=1);
3
4
/**
5
 * Command Class
6
 * @category    Ticaje
7
 * @package     Ticaje_Dummy
8
 * @author      Hector Luis Barrientos <[email protected]>
9
 */
10
11
namespace Ticaje\Dummy\Console\Command;
12
13
use Symfony\Component\Console\Command\Command;
14
use Symfony\Component\Console\Input\InputInterface;
15
use Symfony\Component\Console\Output\OutputInterface;
16
17
use Ticaje\Dummy\Configuration\GeneralInterface;
18
19
/**
20
 * Class Configuration
21
 * @package Ticaje\Dummy\Console\Command
22
 */
23
class Configuration extends Command
24
{
25
    private $generalConfiguration;
26
27
    public function __construct(
28
        GeneralInterface $generalConfiguration,
29
        string $name = null
30
    ) {
31
        $this->generalConfiguration = $generalConfiguration;
32
        parent::__construct($name);
33
    }
34
35
    protected function configure()
36
    {
37
        $this->setName("ticaje:test:configuration");
38
        $this->setDescription("Testing configurations refactor workaround.");
39
        parent::configure();
40
    }
41
42
    protected function execute(InputInterface $input, OutputInterface $output)
43
    {
44
        $output->writeln("Starting command...");
45
        $this->launch($output);
46
        $output->writeln("Finishing command...");
47
    }
48
49
    /**
50
     * @param OutputInterface $output
51
     * Creating room for launching any config method
52
     * @todo Refactor later on
53
     */
54
    protected function launch(OutputInterface $output)
55
    {
56
        $output->writeln("Launching config command...");
57
        $enabled =  $this->generalConfiguration->isEnabled();
58
        $debug =  $this->generalConfiguration->inDebugMode();
59
        $output->writeln("Enabled: $enabled");
60
        $output->writeln("Debug Mode: $debug");
61
    }
62
}
63