CreateGameCommand::create()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 13
Code Lines 9

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 5
CRAP Score 1

Importance

Changes 0
Metric Value
dl 0
loc 13
ccs 5
cts 5
cp 1
rs 9.4285
c 0
b 0
f 0
cc 1
eloc 9
nc 1
nop 4
crap 1
1
<?php
2
3
namespace MiniGameApp\Command;
4
5
use MiniGame\Entity\MiniGameId;
6
use MiniGame\Entity\PlayerId;
7
use MiniGame\GameOptions;
8
use RemiSan\Context\Context;
9
10
class CreateGameCommand extends AbstractPlayerCommand
11
{
12
    const NAME = 'GAME.CREATE';
13
14
    /**
15
     * @var GameOptions
16
     */
17
    private $options;
18
19
    /**
20
     * Construct.
21
     */
22 9
    public function __construct()
23
    {
24 9
    }
25
26
    /**
27
     * Returns the command name
28
     *
29
     * @return string
30
     */
31 3
    public function getCommandName()
32
    {
33 3
        return self::NAME;
34
    }
35
36
    /**
37
     * @return GameOptions
38
     */
39 9
    public function getOptions()
40
    {
41 9
        return $this->options;
42
    }
43
44
    /**
45
     * Construct
46
     *
47
     * @param MiniGameId  $id
48
     * @param PlayerId    $playerId
49
     * @param GameOptions $options
50
     * @param Context     $origin
51
     *
52
     * @return CreateGameCommand
53
     */
54 9
    public static function create(
55
        MiniGameId $id,
56
        PlayerId $playerId,
57
        GameOptions $options = null,
58
        Context $origin = null
59
    ) {
60 9
        $obj = new self();
61
62 9
        $obj->init($id, $playerId, $origin);
63 9
        $obj->options = $options;
64
65 9
        return $obj;
66
    }
67
}
68