%PDF- %PDF-
Direktori : /home/graphicd/public_html/vebto/vendor/kreait/firebase-php/src/Firebase/Messaging/ |
Current File : /home/graphicd/public_html/vebto/vendor/kreait/firebase-php/src/Firebase/Messaging/ApiClient.php |
<?php declare(strict_types=1); namespace Kreait\Firebase\Messaging; use GuzzleHttp\ClientInterface; use GuzzleHttp\Promise\PromiseInterface; use Kreait\Firebase\Exception\FirebaseException; use Kreait\Firebase\Exception\MessagingApiExceptionConverter; use Kreait\Firebase\Exception\MessagingException; use Kreait\Firebase\Http\WrappedGuzzleClient; use Psr\Http\Message\RequestInterface; use Psr\Http\Message\ResponseInterface; use Throwable; /** * @internal */ class ApiClient implements ClientInterface { use WrappedGuzzleClient; /** @var MessagingApiExceptionConverter */ private $errorHandler; /** * @internal */ public function __construct(ClientInterface $client, MessagingApiExceptionConverter $errorHandler) { $this->client = $client; $this->errorHandler = $errorHandler; } /** * @param array<string, mixed> $options * * @throws MessagingException * @throws FirebaseException */ public function send(RequestInterface $request, array $options = []): ResponseInterface { try { return $this->client->send($request); } catch (Throwable $e) { throw $this->errorHandler->convertException($e); } } /** * @param array<string, mixed> $options */ public function sendAsync(RequestInterface $request, array $options = []): PromiseInterface { return $this->client->sendAsync($request, $options) ->then(null, function (Throwable $e): void { throw $this->errorHandler->convertException($e); }); } }