StandardRequest::setRequestData()   A
last analyzed

Complexity

Conditions 2
Paths 2

Size

Total Lines 10
Code Lines 6

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 4
CRAP Score 2.1481

Importance

Changes 1
Bugs 0 Features 0
Metric Value
eloc 6
dl 0
loc 10
ccs 4
cts 6
cp 0.6667
rs 10
c 1
b 0
f 0
cc 2
nc 2
nop 1
crap 2.1481
1
<?php
2
3
namespace MaxBeckers\AmazonAlexa\Request\Request\Standard;
4
5
use MaxBeckers\AmazonAlexa\Request\Request\AbstractRequest;
6
7
/**
8
 * @author Maximilian Beckers <[email protected]>
9
 */
10
abstract class StandardRequest extends AbstractRequest
11
{
12
    /**
13
     * @var string|null
14
     */
15
    public $token;
16
17
    /**
18
     * @var string
19
     */
20
    public $requestId;
21
22
    /**
23
     * @var string
24
     */
25
    public $locale;
26
27
    /**
28
     * @param array $amazonRequest
29
     */
30 23
    protected function setRequestData(array $amazonRequest)
31
    {
32 23
        $this->requestId = $amazonRequest['requestId'];
33
        //Workaround for amazon developer console sending unix timestamp
34
        try {
35 23
            $this->timestamp = new \DateTime($amazonRequest['timestamp']);
36
        } catch (\Exception $e) {
37
            $this->timestamp = (new \DateTime())->setTimestamp(intval($amazonRequest['timestamp'] / 1000));
38
        }
39 23
        $this->locale = $amazonRequest['locale'];
40
    }
41
}
42