Completed
Push — 3.0 ( fea5eb...c29f0e )
by Vermeulen
02:17
created

Application::installModule()   A

Complexity

Conditions 5
Paths 6

Size

Total Lines 24

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
dl 0
loc 24
rs 9.2248
c 0
b 0
f 0
cc 5
nc 6
nop 1
1
<?php
2
3
namespace BFW\Install;
4
5
/**
6
 * Application class for install module script
7
 */
8
class Application extends \BFW\Application
9
{
10
    /**
11
     * {@inheritdoc}
12
     * Remove not used systems, and add new system used by installer
13
     */
14
    protected function defineCoreSystemList()
15
    {
16
        parent::defineCoreSystemList();
17
        
18
        //Remove not used systems
19
        unset(
20
            $this->coreSystemList['request'],
21
            $this->coreSystemList['session'],
22
            $this->coreSystemList['errors'],
23
            $this->coreSystemList['cli']
24
        );
25
        
26
        //Change ModuleList class
27
        $this->coreSystemList['moduleList'] = new Core\AppSystems\ModuleList;
28
        
29
        //Add new system : module installation system
30
        $this->coreSystemList['moduleInstall'] = new Core\AppSystems\ModuleInstall;
31
    }
32
33
    /**
34
     * {@inheritdoc}
35
     */
36
    public function run()
37
    {
38
        $this->getMonolog()
0 ignored issues
show
Documentation Bug introduced by
The method getMonolog does not exist on object<BFW\Install\Application>? Since you implemented __call, maybe consider adding a @method annotation.

If you implement __call and you know which methods are available, you can improve IDE auto-completion and static analysis by adding a @method annotation to the class.

This is often the case, when __call is implemented by a parent class and only the child class knows which methods exist:

class ParentClass {
    private $data = array();

    public function __call($method, array $args) {
        if (0 === strpos($method, 'get')) {
            return $this->data[strtolower(substr($method, 3))];
        }

        throw new \LogicException(sprintf('Unsupported method: %s', $method));
    }
}

/**
 * If this class knows which fields exist, you can specify the methods here:
 *
 * @method string getName()
 */
class SomeClass extends ParentClass { }
Loading history...
39
            ->getLogger()
40
            ->debug('running framework install')
41
        ;
42
        
43
        $this->runTasks->run();
44
        $this->runTasks->sendNotify('bfw_modules_install_done');
45
    }
46
}
47