Leuchtfeuer/mautic-deutschepost

View on GitHub
Exception/RequestException.php

Summary

Maintainability
A
0 mins
Test Coverage
<?php

namespace MauticPlugin\LeuchtfeuerPrintmailingBundle\Exception;

use Psr\Http\Message\ResponseInterface;
use Throwable;

class RequestException extends \Exception
{
    /**
     * RequestException constructor.
     *
     * @param int $code
     */
    public function __construct(ResponseInterface $response, $code = 0, Throwable $previous = null)
    {
        $responseContent = \GuzzleHttp\json_decode($response->getBody()->getContents(), true);
        $error           = $responseContent['errors'][0] ?? ['errorMessage' => $responseContent['error']];

        parent::__construct($error['errorMessage'], $code, $previous);
    }
}