AMultipleValue   A
last analyzed

Complexity

Total Complexity 4

Size/Duplication

Total Lines 40
Duplicated Lines 0 %

Test Coverage

Coverage 100%

Importance

Changes 0
Metric Value
wmc 4
eloc 8
dl 0
loc 40
ccs 11
cts 11
cp 1
rs 10
c 0
b 0
f 0

4 Methods

Rating   Name   Duplication   Size   Complexity  
A setAlias() 0 3 1
A setLabel() 0 3 1
A getLabel() 0 3 1
A setColumn() 0 3 1
1
<?php
2
3
namespace kalanis\kw_table\core\Connector;
4
5
6
use kalanis\kw_connect\core\Interfaces\IIterableConnector;
7
use kalanis\kw_forms\Exceptions\RenderException;
8
use kalanis\kw_table\core\TableException;
9
10
11
/**
12
 * Class AMultipleValue
13
 * @package kalanis\kw_table\core\Connector
14
 * Connect multiple fields on one column in filter - abstract
15
 */
16
abstract class AMultipleValue
17
{
18
    protected string $alias = '';
19
    protected ?string $label = null;
20
    protected string $columnName = '';
21
22 2
    public function setColumn(string $columnName): void
23
    {
24 2
        $this->columnName = $columnName;
25 2
    }
26
27 2
    public function setAlias(string $alias): void
28
    {
29 2
        $this->alias = $alias;
30 2
    }
31
32
    abstract public function getAlias(): string;
33
34 1
    public function setLabel(string $label): void
35
    {
36 1
        $this->label = $label;
37 1
    }
38
39 3
    public function getLabel(): ?string
40
    {
41 3
        return $this->label;
42
    }
43
44
    abstract public function setDataSourceConnector(IIterableConnector $dataSource): void;
45
46
    /**
47
     * @throws TableException
48
     */
49
    abstract public function add(): void;
50
51
    /**
52
     * @throws RenderException
53
     * @return string
54
     */
55
    abstract public function renderContent(): string;
56
}
57