__construct() public method

public __construct ( string | null $apiKey = null, Http\Client\HttpClient $httpClient = null, string $apiEndpoint = 'api.mailgun.net', Mailgun\Deserializer\ResponseDeserializer $deserializer = null, HttpClientConfigurator $clientConfigurator = null, RequestBuilder $requestBuilder = null )
$apiKey string | null
$httpClient Http\Client\HttpClient
$apiEndpoint string
$deserializer Mailgun\Deserializer\ResponseDeserializer
$clientConfigurator HttpClientConfigurator
$requestBuilder RequestBuilder
 /**
  * MailgunManager constructor.
  * @param string $apiKey
  * @param string $domain
  * @throws MailWrapperSetupException
  */
 public function __construct($apiKey, $domain)
 {
     if (!$apiKey || !$domain) {
         throw new MailWrapperSetupException('API Key and Domain must be provided');
     }
     $this->domain = $domain;
     $this->apiKey = $apiKey;
     // fixes for Puli factory breakages
     $client = null;
     if (class_exists('\\Http\\Adapter\\Guzzle6\\Client')) {
         $guzzleClient = new Client();
         $client = new Guzzle6Client($guzzleClient);
     } else {
         if (class_exists('\\Http\\Adapter\\Guzzle5\\Client')) {
             $guzzleClient = new Client();
             $factory = new GuzzleMessageFactory();
             $client = new Guzzle5Client($guzzleClient, $factory);
         }
     }
     parent::__construct($apiKey, $client);
 }
 public function __construct($apiKey = NULL, $domain = "")
 {
     parent::__construct($apiKey);
     $this->workingDomain = $domain;
 }