/
home
/
obinna
/
html
/
boaz2
/
vendor
/
mailgun
/
mailgun-php
/
src
/
Api
/
Upload File
HOME
<?php declare(strict_types=1); /* * Copyright (C) 2013 Mailgun * * This software may be modified and distributed under the terms * of the MIT license. See the LICENSE file for details. */ namespace Mailgun\Api; use Mailgun\Api\Suppression\Bounce; use Mailgun\Api\Suppression\Complaint; use Mailgun\Api\Suppression\Unsubscribe; use Mailgun\Api\Suppression\Whitelist; use Mailgun\HttpClient\RequestBuilder; use Mailgun\Hydrator\Hydrator; use Psr\Http\Client\ClientInterface; /** * @see https://documentation.mailgun.com/api-suppressions.html * * @author Sean Johnson <sean@mailgun.com> */ class Suppression { /** * @var ClientInterface */ private $httpClient; /** * @var RequestBuilder */ private $requestBuilder; /** * @var Hydrator */ private $hydrator; /** * @param ClientInterface $httpClient * @param RequestBuilder $requestBuilder * @param Hydrator $hydrator */ public function __construct($httpClient, RequestBuilder $requestBuilder, Hydrator $hydrator) { $this->httpClient = $httpClient; $this->requestBuilder = $requestBuilder; $this->hydrator = $hydrator; } /** * @return Bounce */ public function bounces(): Bounce { return new Bounce($this->httpClient, $this->requestBuilder, $this->hydrator); } /** * @return Complaint */ public function complaints(): Complaint { return new Complaint($this->httpClient, $this->requestBuilder, $this->hydrator); } /** * @return Unsubscribe */ public function unsubscribes(): Unsubscribe { return new Unsubscribe($this->httpClient, $this->requestBuilder, $this->hydrator); } /** * @return Whitelist */ public function whitelists(): Whitelist { return new Whitelist($this->httpClient, $this->requestBuilder, $this->hydrator); } }