Passed
Pull Request — master (#22)
by Vladislav
02:12
created

CurlResponseHandler::handle()   A

Complexity

Conditions 2
Paths 2

Size

Total Lines 6
Code Lines 4

Duplication

Lines 0
Ratio 0 %

Importance

Changes 2
Bugs 0 Features 0
Metric Value
eloc 4
c 2
b 0
f 0
dl 0
loc 6
rs 10
cc 2
nc 2
nop 2
1
<?php
2
namespace Carpenstar\ByBitAPI\Core\Response;
3
4
5
use Carpenstar\ByBitAPI\Core\Interfaces\IResponseInterface;
6
use Carpenstar\ByBitAPI\Core\Interfaces\IResponseHandlerInterface;
7
use Carpenstar\ByBitAPI\Core\Objects\ExceptionResponse;
8
use Carpenstar\ByBitAPI\Core\Objects\SuccessResponse;
9
10
class CurlResponseHandler implements IResponseHandlerInterface
11
{
12
    /**
13
     * @param array $apiData
14
     * @param string $dto
15
     * @return IResponseInterface
16
     */
17
    public function handle(array $apiData, string $dto): IResponseInterface
18
    {
19
        if ($apiData['retCode'] == 0) {
20
            return new SuccessResponse($dto, $apiData['retCode'], $apiData['retMsg'], $apiData['retExtInfo'], $apiData['result'], $apiData['nextPageCursor'] ?? '');
21
        } else {
22
            return new ExceptionResponse($apiData['retCode'], $apiData['retMsg'], $apiData['retExtInfo'], $apiData['time']);
23
        }
24
    }
25
}
26