/
home
/
obinna
/
html
/
boazapp
/
vendor
/
mailgun
/
mailgun-php
/
src
/
Model
/
Domain
/
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\Model\Domain; /** * Represents domain information in its simplest form. * * @author Sean Johnson <sean@ramcloud.io> */ final class Domain { private $createdAt; private $smtpLogin; private $name; private $smtpPassword; private $wildcard; private $spamAction; private $state; private $webScheme; public static function create(array $data): self { $model = new self(); $model->name = $data['name'] ?? null; $model->smtpLogin = $data['smtp_login'] ?? null; $model->smtpPassword = $data['smtp_password'] ?? null; $model->wildcard = $data['wildcard'] ?? null; $model->spamAction = $data['spam_action'] ?? null; $model->state = $data['state'] ?? null; $model->createdAt = isset($data['created_at']) ? new \DateTimeImmutable($data['created_at']) : null; $model->webScheme = $data['web_scheme'] ?? null; return $model; } private function __construct() { } public function getName(): ?string { return $this->name; } public function getSmtpUsername(): ?string { return $this->smtpLogin; } public function getSmtpPassword(): ?string { return $this->smtpPassword; } public function isWildcard(): ?bool { return $this->wildcard; } public function getSpamAction(): ?string { return $this->spamAction; } public function getState(): ?string { return $this->state; } public function getCreatedAt(): \DateTimeImmutable { return $this->createdAt; } }