27 lines
633 B
PHP
27 lines
633 B
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
namespace KupShop\ApiBundle\Exception;
|
|
|
|
class ApiErrorResponseException extends \Exception
|
|
{
|
|
public array $apiResponse;
|
|
|
|
public function __construct(array $apiResponse, string $message = '', int $code = 0, ?\Throwable $previous = null)
|
|
{
|
|
parent::__construct($message, $code, $previous);
|
|
|
|
$this->apiResponse = $apiResponse;
|
|
}
|
|
|
|
public static function fromResponse(array $response): self
|
|
{
|
|
return new self(
|
|
apiResponse: $response,
|
|
message: $response['message'] ?? '',
|
|
code: $response['code'] ?? 500,
|
|
);
|
|
}
|
|
}
|