AlternativeTitles::__construct()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 6
Code Lines 4

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 5
CRAP Score 1

Importance

Changes 0
Metric Value
dl 0
loc 6
ccs 5
cts 5
cp 1
rs 9.4285
c 0
b 0
f 0
cc 1
eloc 4
nc 1
nop 3
crap 1
1
<?php
2
3
namespace NekoAPI\Component\Entity;
4
5
/**
6
 * Class AlternativeTitles
7
 *
8
 * @package NekoAPI\Component\Entity
9
 * @author  Aurimas Niekis <[email protected]>
10
 */
11
class AlternativeTitles extends BaseEntity
12
{
13
    /**
14
     * @var string
15
     */
16
    private $english;
17
18
    /**
19
     * @var string
20
     */
21
    private $japanese;
22
23
    /**
24
     * @var array
25
     */
26
    private $synonyms;
27
28 2
    public function __construct(?string $english, ?string $japanese, array $synonyms = [])
29
    {
30 2
        $this->english  = $english;
31 2
        $this->japanese = $japanese;
32 2
        $this->synonyms = $synonyms;
33 2
    }
34
35
    /**
36
     * @return string
37
     */
38 2
    public function getEnglish(): ?string
39
    {
40 2
        return $this->english;
41
    }
42
43
    /**
44
     * @param string $english
45
     *
46
     * @return AlternativeTitles
47
     */
48 1
    public function setEnglish(string $english): AlternativeTitles
49
    {
50 1
        $this->english = $english;
51
52 1
        return $this;
53
    }
54
55
    /**
56
     * @return string
57
     */
58 2
    public function getJapanese(): ?string
59
    {
60 2
        return $this->japanese;
61
    }
62
63
    /**
64
     * @param string $japanese
65
     *
66
     * @return AlternativeTitles
67
     */
68 1
    public function setJapanese(string $japanese): AlternativeTitles
69
    {
70 1
        $this->japanese = $japanese;
71
72 1
        return $this;
73
    }
74
75
    /**
76
     * @return array
77
     */
78 2
    public function getSynonyms(): array
79
    {
80 2
        return $this->synonyms;
81
    }
82
83
    /**
84
     * @param array $synonyms
85
     *
86
     * @return AlternativeTitles
87
     */
88 1
    public function setSynonyms(array $synonyms): AlternativeTitles
89
    {
90 1
        $this->synonyms = $synonyms;
91
92 1
        return $this;
93
    }
94
95
    /**
96
     * @inheritDoc
97
     */
98 1
    public function jsonSerialize(): array
99
    {
100
        return [
101 1
            'english'  => $this->getEnglish(),
102 1
            'japanese' => $this->getJapanese(),
103 1
            'synonyms' => $this->getSynonyms(),
104
        ];
105
    }
106
}