Completed
Push — master ( e3663d...ab0db8 )
by Alex
03:22
created

ViewBase::getTemplate()   A

Complexity

Conditions 2
Paths 2

Size

Total Lines 7
Code Lines 3

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 1
Metric Value
cc 2
eloc 3
c 1
b 0
f 1
nc 2
nop 0
dl 0
loc 7
rs 10
1
<?php
2
namespace Mezon\Application;
3
4
use Mezon\HtmlTemplate\HtmlTemplate;
5
6
/**
7
 * Class ViewBase
8
 *
9
 * @package Mezon
10
 * @subpackage View
11
 * @author Dodonov A.A.
12
 * @version v.1.0 (2019/08/06)
13
 * @copyright Copyright (c) 2019, aeon.org
14
 */
15
16
/**
17
 * Base class for all views
18
 */
19
abstract class ViewBase implements \Mezon\Application\ViewInterface
20
{
21
22
    /**
23
     * Active template
24
     *
25
     * @var HtmlTemplate
26
     */
27
    private $template = null;
28
29
    /**
30
     * Constructor
31
     *
32
     * @param HtmlTemplate $template
33
     *            template
34
     */
35
    public function __construct(HtmlTemplate $template = null)
36
    {
37
        $this->template = $template;
38
    }
39
40
    /**
41
     * Method returns template
42
     *
43
     * @return HtmlTemplate template
44
     */
45
    public function getTemplate(): HtmlTemplate
46
    {
47
        if ($this->template === null) {
48
            throw (new \Exception('Template was not set for the view', - 1));
49
        }
50
51
        return $this->template;
52
    }
53
}
54