Passed
Push — master ( a42211...e3bbc7 )
by Maximilian
42s
created

Animation::create()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 9
Code Lines 5

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
eloc 5
dl 0
loc 9
rs 10
c 0
b 0
f 0
cc 1
nc 1
nop 3
1
<?php
2
3
namespace MaxBeckers\AmazonAlexa\Response\Directives\GadgetController;
4
5
/**
6
 * @author Maximilian Beckers <[email protected]>
7
 */
8
class Animation
9
{
10
    /**
11
     * @var int|null
12
     */
13
    public $repeat;
14
15
    /**
16
     * @var array
17
     */
18
    public $targetLights = ['1'];
19
20
    /**
21
     * @var Sequence[]
22
     */
23
    public $sequence = [];
24
25
    /**
26
     * @param int        $repeat
27
     * @param array      $targetLights
28
     * @param Sequence[] $sequence
29
     *
30
     * @return Animation
31
     */
32
    public static function create(array $sequence, int $repeat=1, array $targetLights = ['1']): self
33
    {
34
        $animations = new self();
35
36
        $animations->repeat       = $repeat;
37
        $animations->targetLights = $targetLights;
38
        $animations->sequence     = $sequence;
39
40
        return $animations;
41
    }
42
}
43