Completed
Push — master ( a29524...389a3a )
by Andrii
11:06
created

AbstractTool::getAccessId()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 5

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 0
CRAP Score 2

Importance

Changes 0
Metric Value
dl 0
loc 5
ccs 0
cts 0
cp 0
rs 10
c 0
b 0
f 0
cc 1
nc 1
nop 0
crap 2
1
<?php
2
/**
3
 * HiAPI Yii2 base project for building API
4
 *
5
 * @link      https://github.com/hiqdev/hiapi
6
 * @package   hiapi
7
 * @license   BSD-3-Clause
8
 * @copyright Copyright (c) 2017, HiQDev (http://hiqdev.com/)
9
 */
10
11
namespace hiapi\components;
12
13
use hiqdev\yii\compat\yii;
14
15
abstract class AbstractTool extends \yii\base\Component
16
{
17
    protected $base;
18
19
    /**
20
     * @var array tool configuration
21
     */
22
    protected $data;
23
24
    public function __construct($base, $data)
25
    {
26
        $this->base = $base;
27
        $this->data = $data;
28
29
        /// XXX WTF? $base->di becomes null after passing as argument
30
        /// TODO fix!
31
        if ($this->base->di === null) {
32
            $this->base->di = yii::getContainer();
33
        }
34
        if ($this->base->dbc === null) {
35
            $this->base->dbc = $this->base->di->get('dbc');
36
        }
37
    }
38
39
    public function getBase()
40
    {
41
        return $this->base;
42
    }
43
44
    public function getDi()
45
    {
46
        return $this->base->di;
47
    }
48
49
    public function getDbc()
50
    {
51
        return $this->base->dbc;
52
    }
53
54
    public function getAccessId(): int
55
    {
56
        $id = $this->data['id'] ?? null;
57
        return (int)$id;
58
    }
59
}
60