Passed
Push — master ( 52dd57...a4c9fa )
by Willy
02:14
created

PvpService::prepareBracketValueObject()   A

Complexity

Conditions 2
Paths 2

Size

Total Lines 19
Code Lines 13

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 0
CRAP Score 6

Importance

Changes 1
Bugs 0 Features 0
Metric Value
c 1
b 0
f 0
dl 0
loc 19
ccs 0
cts 17
cp 0
rs 9.4285
cc 2
eloc 13
nc 2
nop 1
crap 6
1
<?php
2
3
namespace Kubinashi\BattlenetApi\WorldOfWarcraft\CharacterProfileApi\Pvp\Service;
4
5
use Kubinashi\BattlenetApi\WorldOfWarcraft\CharacterProfileApi\Pvp\Model\BracketValueObject;
6
use Kubinashi\BattlenetApi\WorldOfWarcraft\CharacterProfileApi\Pvp\Model\PvpValueObject;
7
8
/**
9
 * @author  Willy Reiche
10
 * @since   2017-08-28
11
 * @version 1.0
12
 */
13
class PvpService
14
{
15
    /**
16
     * @param \StdClass $responseObject
17
     * @return PvpValueObject
18
     */
19
    public function preparePvpValueObject($responseObject)
20
    {
21
        $brackets = $this->prepareBracketValueObject($responseObject);
22
23
        $pvp = new PvpValueObject(
24
            $brackets
25
        );
26
27
        return $pvp;
28
    }
29
30
    /**
31
     * @param \StdClass $responseObject
32
     * @return BracketValueObject[]
33
     */
34
    private function prepareBracketValueObject($responseObject)
35
    {
36
        $brackets = [];
37
38
        foreach ($responseObject->pvp->brackets as $bracket) {
39
            $brackets[] = new BracketValueObject(
40
                $bracket->slug,
41
                $bracket->rating,
42
                $bracket->weeklyPlayed,
43
                $bracket->weeklyWon,
44
                $bracket->weeklyLost,
45
                $bracket->seasonPlayed,
46
                $bracket->seasonWon,
47
                $bracket->seasonLost
48
            );
49
        }
50
51
        return $brackets;
52
    }
53
}
54