Completed
Pull Request — master (#1)
by Woody
27:07 queued 01:07
created

JsonContentHandler::getParsedBody()   A

Complexity

Conditions 2
Paths 2

Size

Total Lines 11
Code Lines 6

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 6
CRAP Score 2
Metric Value
dl 0
loc 11
ccs 6
cts 6
cp 1
rs 9.4286
cc 2
eloc 6
nc 2
nop 1
crap 2
1
<?php
2
namespace Equip\Handler;
3
4
use Equip\Exception\HttpException;
5
6
class JsonContentHandler extends ContentHandler
7
{
8
    /**
9
     * @inheritDoc
10
     */
11 3
    protected function isApplicableMimeType($mime)
12
    {
13 3
        return preg_match('~^application/([a-z.]+\+)?json$~', $mime);
14
    }
15
16
    /**
17
     * @inheritDoc
18
     */
19 2
    protected function getParsedBody($body)
20
    {
21 2
        $body = json_decode($body, true);
22
23 2
        if (json_last_error() !== JSON_ERROR_NONE) {
24 1
            $message = 'JSON ' . json_last_error_msg();
25 1
            throw HttpException::badRequest($message);
26
        }
27
28 1
        return $body;
29
    }
30
}
31