for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
/*
* Copyright (C) 2013-2016 Mailgun
*
* This software may be modified and distributed under the terms
* of the MIT license. See the LICENSE file for details.
*/
namespace Mailgun\Model\Suppression\Unsubscribe;
use Mailgun\Model\ApiResponse;
/**
* @author Sean Johnson <[email protected]>
final class ShowResponse implements ApiResponse
{
* @var string
private $address;
private $tag;
* @var \DateTime
private $createdAt;
* @param string $address
private function __construct($address)
$this->address = $address;
$this->createdAt = new \DateTime();
}
* @param array $data
* @return ShowResponse
public static function create(array $data)
$unsubscribe = new self($data['address']);
if (isset($data['tag'])) {
$unsubscribe->setTag($data['tag']);
if (isset($data['created_at'])) {
$unsubscribe->setCreatedAt(new \DateTime($data['created_at']));
return $unsubscribe;
* @return string
public function getAddress()
return $this->address;
public function getTag()
return $this->tag;
* @param string $tag
private function setTag($tag)
$this->tag = $tag;
* @return \DateTime
public function getCreatedAt()
return $this->createdAt;
* @param \DateTime $createdAt
private function setCreatedAt(\DateTime $createdAt)
$this->createdAt = $createdAt;