Passed
Branch release/0.1.0 (dcda87)
by Yo
02:43 queued 44s
created

JsonRpcParseErrorException   A

Complexity

Total Complexity 3

Size/Duplication

Total Lines 27
Duplicated Lines 0 %

Test Coverage

Coverage 100%

Importance

Changes 0
Metric Value
dl 0
loc 27
ccs 7
cts 7
cp 1
rs 10
c 0
b 0
f 0
wmc 3

1 Method

Rating   Name   Duplication   Size   Complexity  
A __construct() 0 13 3
1
<?php
2
namespace Yoanm\JsonRpcServer\Domain\Exception;
3
4
/**
5
 * Class JsonRpcParseErrorException
6
 */
7
class JsonRpcParseErrorException extends JsonRpcException
8
{
9
    const CODE = -32700;
10
11
    const DATA_CONTENT_KEY = 'content';
12
    const DATA_ERROR_KEY = 'error';
13
    const DATA_ERROR_CODE_KEY = 'code';
14
    const DATA_ERROR_MESSAGE_KEY = 'message';
15
16
    /**
17
     * @param string $content
18
     * @param mixed  $parseErrorCode
19
     * @param mixed  $parseErrorMessage
20
     */
21 4
    public function __construct(string $content, $parseErrorCode = null, $parseErrorMessage = null)
22
    {
23
        $data = [
24 4
            self::DATA_CONTENT_KEY => $content,
25
        ];
26 4
        if ($parseErrorCode) {
27 2
            $data[self::DATA_ERROR_KEY][self::DATA_ERROR_CODE_KEY] = $parseErrorCode;
28
        }
29 4
        if ($parseErrorMessage) {
30 1
            $data[self::DATA_ERROR_KEY][self::DATA_ERROR_MESSAGE_KEY] = $parseErrorMessage;
31
        }
32
33 4
        parent::__construct(self::CODE, 'Parse error', $data);
34 4
    }
35
}
36