Passed
Push — master ( 86b291...5e082c )
by Willy
02:08
created

ItemValueObject::__construct()   B

Complexity

Conditions 1
Paths 1

Size

Total Lines 41
Code Lines 39

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 0
CRAP Score 2

Importance

Changes 1
Bugs 0 Features 0
Metric Value
c 1
b 0
f 0
dl 0
loc 41
ccs 0
cts 41
cp 0
rs 8.8571
cc 1
eloc 39
nc 1
nop 19
crap 2

How to fix   Many Parameters   

Many Parameters

Methods with many parameters are not only hard to understand, but their parameters also often become inconsistent when you need more, or different data.

There are several approaches to avoid long parameter lists:

1
<?php
2
3
namespace Kubinashi\BattlenetApi\WorldOfWarcraft\CharacterProfileApi\Model\Item;
4
5
/**
6
 * @author  Willy Reiche
7
 * @since   2017-08-23
8
 * @version 1.0
9
 */
10
class ItemValueObject
11
{
12
    /**
13
     * @var int
14
     */
15
    private $averageItemLevel;
16
    /**
17
     * @var int
18
     */
19
    private $averageItemLevelEquipped;
20
    /**
21
     * @var StandardItemValueObject
22
     */
23
    private $head;
24
    /**
25
     * @var StandardItemValueObject
26
     */
27
    private $neck;
28
    /**
29
     * @var StandardItemValueObject
30
     */
31
    private $shoulder;
32
    /**
33
     * @var StandardItemValueObject
34
     */
35
    private $back;
36
    /**
37
     * @var StandardItemValueObject
38
     */
39
    private $chest;
40
    /**
41
     * @var StandardItemValueObject
42
     */
43
    private $shirt;
44
    /**
45
     * @var StandardItemValueObject
46
     */
47
    private $wrist;
48
    /**
49
     * @var StandardItemValueObject
50
     */
51
    private $hands;
52
    /**
53
     * @var StandardItemValueObject
54
     */
55
    private $waist;
56
    /**
57
     * @var StandardItemValueObject
58
     */
59
    private $legs;
60
    /**
61
     * @var StandardItemValueObject
62
     */
63
    private $feet;
64
    /**
65
     * @var StandardItemValueObject
66
     */
67
    private $finger1;
68
    /**
69
     * @var StandardItemValueObject
70
     */
71
    private $finger2;
72
    /**
73
     * @var StandardItemValueObject
74
     */
75
    private $trinket1;
76
    /**
77
     * @var StandardItemValueObject
78
     */
79
    private $trinket2;
80
    /**
81
     * @var WeaponItemValueObject
82
     */
83
    private $mainHand;
84
    /**
85
     * @var WeaponItemValueObject
86
     */
87
    private $offHand;
88
89
    /**
90
     * ItemValueObject constructor.
91
     * @param int                     $averageItemLevel
92
     * @param int                     $averageItemLevelEquipped
93
     * @param StandardItemValueObject $head
94
     * @param StandardItemValueObject $neck
95
     * @param StandardItemValueObject $shoulder
96
     * @param StandardItemValueObject $back
97
     * @param StandardItemValueObject $chest
98
     * @param StandardItemValueObject $shirt
99
     * @param StandardItemValueObject $wrist
100
     * @param StandardItemValueObject $hands
101
     * @param StandardItemValueObject $waist
102
     * @param StandardItemValueObject $legs
103
     * @param StandardItemValueObject $feet
104
     * @param StandardItemValueObject $finger1
105
     * @param StandardItemValueObject $finger2
106
     * @param StandardItemValueObject $trinket1
107
     * @param StandardItemValueObject $trinket2
108
     * @param WeaponItemValueObject   $mainHand
109
     * @param WeaponItemValueObject   $offHand
110
     */
111
    public function __construct(
112
        $averageItemLevel,
113
        $averageItemLevelEquipped,
114
        $head,
115
        $neck,
116
        $shoulder,
117
        $back,
118
        $chest,
119
        $shirt,
120
        $wrist,
121
        $hands,
122
        $waist,
123
        $legs,
124
        $feet,
125
        $finger1,
126
        $finger2,
127
        $trinket1,
128
        $trinket2,
129
        $mainHand,
130
        $offHand
131
    ) {
132
        $this->averageItemLevel = $averageItemLevel;
133
        $this->averageItemLevelEquipped = $averageItemLevelEquipped;
134
        $this->head = $head;
135
        $this->neck = $neck;
136
        $this->shoulder = $shoulder;
137
        $this->back = $back;
138
        $this->chest = $chest;
139
        $this->shirt = $shirt;
140
        $this->wrist = $wrist;
141
        $this->hands = $hands;
142
        $this->waist = $waist;
143
        $this->legs = $legs;
144
        $this->feet = $feet;
145
        $this->finger1 = $finger1;
146
        $this->finger2 = $finger2;
147
        $this->trinket1 = $trinket1;
148
        $this->trinket2 = $trinket2;
149
        $this->mainHand = $mainHand;
150
        $this->offHand = $offHand;
151
    }
152
153
    /**
154
     * @return int
155
     */
156
    public function getAverageItemLevel()
157
    {
158
        return $this->averageItemLevel;
159
    }
160
161
    /**
162
     * @return int
163
     */
164
    public function getAverageItemLevelEquipped()
165
    {
166
        return $this->averageItemLevelEquipped;
167
    }
168
169
    /**
170
     * @return StandardItemValueObject
171
     */
172
    public function getHead()
173
    {
174
        return $this->head;
175
    }
176
177
    /**
178
     * @return StandardItemValueObject
179
     */
180
    public function getNeck()
181
    {
182
        return $this->neck;
183
    }
184
185
    /**
186
     * @return StandardItemValueObject
187
     */
188
    public function getShoulder()
189
    {
190
        return $this->shoulder;
191
    }
192
193
    /**
194
     * @return StandardItemValueObject
195
     */
196
    public function getBack()
197
    {
198
        return $this->back;
199
    }
200
201
    /**
202
     * @return StandardItemValueObject
203
     */
204
    public function getChest()
205
    {
206
        return $this->chest;
207
    }
208
209
    /**
210
     * @return StandardItemValueObject
211
     */
212
    public function getShirt()
213
    {
214
        return $this->shirt;
215
    }
216
217
    /**
218
     * @return StandardItemValueObject
219
     */
220
    public function getWrist()
221
    {
222
        return $this->wrist;
223
    }
224
225
    /**
226
     * @return StandardItemValueObject
227
     */
228
    public function getHands()
229
    {
230
        return $this->hands;
231
    }
232
233
    /**
234
     * @return StandardItemValueObject
235
     */
236
    public function getWaist()
237
    {
238
        return $this->waist;
239
    }
240
241
    /**
242
     * @return StandardItemValueObject
243
     */
244
    public function getLegs()
245
    {
246
        return $this->legs;
247
    }
248
249
    /**
250
     * @return StandardItemValueObject
251
     */
252
    public function getFeet()
253
    {
254
        return $this->feet;
255
    }
256
257
    /**
258
     * @return StandardItemValueObject
259
     */
260
    public function getFinger1()
261
    {
262
        return $this->finger1;
263
    }
264
265
    /**
266
     * @return StandardItemValueObject
267
     */
268
    public function getFinger2()
269
    {
270
        return $this->finger2;
271
    }
272
273
    /**
274
     * @return StandardItemValueObject
275
     */
276
    public function getTrinket1()
277
    {
278
        return $this->trinket1;
279
    }
280
281
    /**
282
     * @return StandardItemValueObject
283
     */
284
    public function getTrinket2()
285
    {
286
        return $this->trinket2;
287
    }
288
289
    /**
290
     * @return WeaponItemValueObject
291
     */
292
    public function getMainHand()
293
    {
294
        return $this->mainHand;
295
    }
296
297
    /**
298
     * @return WeaponItemValueObject
299
     */
300
    public function getOffHand()
301
    {
302
        return $this->offHand;
303
    }
304
}
305