PluginAbstract   A
last analyzed

Complexity

Total Complexity 11

Size/Duplication

Total Lines 98
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
dl 0
loc 98
rs 10
c 0
b 0
f 0
wmc 11

11 Methods

Rating   Name   Duplication   Size   Complexity  
A setCssResources() 0 3 1
A getPriority() 0 3 1
A getVersion() 0 3 1
A install() 0 2 1
A __construct() 0 3 1
A update() 0 2 1
A setRoutes() 0 3 1
A registerControllers() 0 3 1
A setJsResources() 0 3 1
A setViewResources() 0 3 1
A build() 0 2 1
1
<?php
2
/**
3
 * Copyright (c) 2017
4
 *
5
 * @package   Majima
6
 * @author    David Neustadt <[email protected]>
7
 * @copyright 2017 David Neustadt
8
 * @license   MIT
9
 */
10
11
namespace Majima\PluginBundle;
12
13
use Majima\PluginBundle\Components\AssetCollection;
14
use Majima\PluginBundle\Components\ControllerCollection;
15
use Majima\PluginBundle\Components\RouteCollection;
16
use Majima\PluginBundle\Components\ViewCollection;
17
use Symfony\Component\DependencyInjection\ContainerBuilder;
18
19
/**
20
 * Interface PluginAbstract
21
 * @package Majima\PluginBundle
22
 */
23
abstract class PluginAbstract implements PluginInterface
24
{
25
    /**
26
     * @var ContainerBuilder
27
     */
28
    protected $container;
29
30
    /**
31
     * @var string
32
     */
33
    private $version = '1.0.0';
34
35
    /**
36
     * @var int
37
     */
38
    private $priority = 1;
39
40
    /**
41
     * PluginAbstract constructor.
42
     * @param ContainerBuilder $container
43
     */
44
    public function __construct(ContainerBuilder $container)
45
    {
46
        $this->container = $container;
47
    }
48
49
    public function install()
50
    {
51
52
    }
53
54
    /**
55
     * @param $version
56
     */
57
    public function update($version)
58
    {
59
60
    }
61
62
    /**
63
     * @return string
64
     */
65
    public function getVersion()
66
    {
67
        return $this->version;
68
    }
69
70
    /**
71
     * @return int
72
     */
73
    public function getPriority()
74
    {
75
        return $this->priority;
76
    }
77
78
    public function build()
79
    {
80
81
    }
82
83
    /**
84
     * @return ControllerCollection
85
     */
86
    public function registerControllers()
87
    {
88
        return new ControllerCollection([]);
89
    }
90
91
    /**
92
     * @return RouteCollection
93
     */
94
    public function setRoutes()
95
    {
96
        return new RouteCollection();
97
    }
98
99
    /**
100
     * @return ViewCollection
101
     */
102
    public function setViewResources()
103
    {
104
        return new ViewCollection();
105
    }
106
107
    /**
108
     * @return AssetCollection
109
     */
110
    public function setCssResources()
111
    {
112
        return new AssetCollection();
113
    }
114
115
    /**
116
     * @return AssetCollection
117
     */
118
    public function setJsResources()
119
    {
120
        return new AssetCollection();
121
    }
122
}