AbstractDiffElement::getSourceLabel()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 4
Code Lines 2

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
c 1
b 0
f 0
dl 0
loc 4
rs 10
cc 1
eloc 2
nc 1
nop 0
1
<?php
2
/**
3
 * @link    https://github.com/nnx-framework/form-comparator
4
 * @author  Malofeykin Andrey  <[email protected]>
5
 */
6
namespace Nnx\FormComparator\Comparator\Diff;
7
8
use Nnx\FormComparator\Comparator\AbstractDiff;
9
use Nnx\FormComparator\Comparator\DiffElementBuilder;
10
use Zend\Form\FormInterface;
11
12
/**
13
 * Class AllowFormTrait
14
 *
15
 * @package Nnx\FormComparator\Comparator\Diff
16
 */
17
abstract class AbstractDiffElement extends AbstractDiff
18
{
19
    /**
20
     * Элемент был удален
21
     *
22
     * @var string
23
     */
24
    const DELETE = 'delete';
25
26
    /**
27
     * Элемент был изменен
28
     *
29
     * @var string
30
     */
31
    const UPDATE = 'update';
32
33
    /**
34
     * Элемент был добавлен
35
     *
36
     * @var string
37
     */
38
    const INSERT = 'insert';
39
40
    /**
41
     * Форма которую сравнивают
42
     *
43
     * @var FormInterface
44
     */
45
    private $sourceForm;
46
47
    /**
48
     * Форма с которой сравнивают
49
     *
50
     * @var FormInterface
51
     */
52
    private $targetForm;
53
54
55
    /**
56
     * Заголовок сравниваемого элемента
57
     *
58
     * @var string
59
     */
60
    private $sourceLabel;
61
62
    /**
63
     * DeleteElement constructor.
64
     *
65
     * @param DiffElementBuilder $diffBuilder
66
     */
67
    public function __construct(DiffElementBuilder $diffBuilder)
68
    {
69
        $this->sourceForm = $diffBuilder->getSourceForm();
70
        $this->targetForm = $diffBuilder->getTargetForm();
71
        $this->sourceLabel = $diffBuilder->getSourceLabel();
72
73
        parent::__construct($diffBuilder);
74
    }
75
76
    /**
77
     * Возвращает форму которую сравнивают
78
     *
79
     * @return FormInterface
80
     */
81
    public function getSourceForm()
82
    {
83
        return $this->sourceForm;
84
    }
85
86
    /**
87
     * Устанавливает форму которую сравнивают
88
     *
89
     * @param FormInterface $sourceForm
90
     *
91
     * @return $this
92
     */
93
    public function setSourceForm($sourceForm)
94
    {
95
        $this->sourceForm = $sourceForm;
96
97
        return $this;
98
    }
99
100
    /**
101
     * Возвращает форму  с которой сравнивают
102
     *
103
     * @return FormInterface
104
     */
105
    public function getTargetForm()
106
    {
107
        return $this->targetForm;
108
    }
109
110
    /**
111
     * Устанавливает форму  с которой сравнивают
112
     *
113
     * @param FormInterface $targetForm
114
     *
115
     * @return $this
116
     */
117
    public function setTargetForm($targetForm)
118
    {
119
        $this->targetForm = $targetForm;
120
121
        return $this;
122
    }
123
124
    /**
125
     * Заголовок сравниваемого элемента
126
     *
127
     * @return string
128
     */
129
    public function getSourceLabel()
130
    {
131
        return $this->sourceLabel;
132
    }
133
134
    /**
135
     * Определяет является ли diff для коллекции или для элемента формы
136
     *
137
     * @return bool
138
     */
139
    abstract public function isCollection();
140
141
    /**
142
     * Определяет какое действие было соверешенно с элементом (элемент был добавлен, изменен, удален)
143
     *
144
     * @return string
145
     */
146
    abstract public function getMode();
147
}
148