Config::__construct()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 3
Code Lines 1

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
eloc 1
c 1
b 0
f 0
dl 0
loc 3
rs 10
cc 1
nc 1
nop 1
1
<?php
2
3
declare(strict_types=1);
4
5
namespace ReliqArts\StyleImporter\Util;
6
7
use ReliqArts\Contracts\ConfigProvider as ConfigAccessor;
8
use ReliqArts\StyleImporter\ConfigProvider;
9
10
/**
11
 * Class Config
12
 *
13
 * @codeCoverageIgnore
14
 */
15
final class Config implements ConfigProvider
16
{
17
    private const CONFIG_KEY_VARIABLE_NAME_CURRENT_VIEW_NAME = 'variable_names.current_view_name';
18
    private const CONFIG_KEY_VARIABLE_NAME_SKIP_STYLE_IMPORT = 'variable_names.skip_style_import';
19
20
    private const DEFAULT_VARIABLE_NAME_CURRENT_VIEW_NAME = 'styleImporterCurrentViewName';
21
    private const DEFAULT_VARIABLE_NAME_SKIP_STYLE_IMPORT = 'styleImporterSkipStyleImport';
22
23
    /**
24
     * @var ConfigAccessor
25
     */
26
    private $configAccessor;
27
28
    /**
29
     * ConfigProvider constructor.
30
     *
31
     * @param ConfigAccessor $configAccessor
32
     */
33
    public function __construct(ConfigAccessor $configAccessor)
34
    {
35
        $this->configAccessor = $configAccessor;
36
    }
37
38
    /**
39
     * @return string
40
     */
41
    public function getCurrentViewNameVariableName(): string
42
    {
43
        return $this->configAccessor->get(
44
            self::CONFIG_KEY_VARIABLE_NAME_CURRENT_VIEW_NAME,
45
            self::DEFAULT_VARIABLE_NAME_CURRENT_VIEW_NAME
46
        );
47
    }
48
49
    /**
50
     * @return string
51
     */
52
    public function getSkipStyleImportVariableName(): string
53
    {
54
        return $this->configAccessor->get(
55
            self::CONFIG_KEY_VARIABLE_NAME_SKIP_STYLE_IMPORT,
56
            self::DEFAULT_VARIABLE_NAME_SKIP_STYLE_IMPORT
57
        );
58
    }
59
}
60