blob: d5d6dc44a561cbf2970fc72c7131a6ccfe5e7619 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
|
<?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\Stats;
/**
* @author Tobias Nyholm <tobias.nyholm@gmail.com>
*/
final class AllResponseItem
{
/**
* @var string
*/
private $id;
/**
* @var string
*/
private $event;
/**
* @var string
*/
private $totalCount;
/**
* @var string[]
*/
private $tags;
/**
* @var \DateTime
*/
private $createdAt;
/**
* @param array $data
*
* @return self
*/
public static function create(array $data)
{
return new self(
isset($data['id']) ? $data['id'] : null,
isset($data['event']) ? $data['event'] : null,
isset($data['total_count']) ? $data['total_count'] : null,
isset($data['tags']) ? $data['tags'] : null,
isset($data['created_at']) ? new \DateTime($data['created_at']) : null
);
}
/**
* @param string $id
* @param string $event
* @param string $totalCount
* @param \string[] $tags
* @param \DateTime $createdAt
*/
private function __construct($id, $event, $totalCount, array $tags, \DateTime $createdAt)
{
$this->id = $id;
$this->event = $event;
$this->totalCount = $totalCount;
$this->tags = $tags;
$this->createdAt = $createdAt;
}
/**
* @return string
*/
public function getId()
{
return $this->id;
}
/**
* @return string
*/
public function getEvent()
{
return $this->event;
}
/**
* @return string
*/
public function getTotalCount()
{
return $this->totalCount;
}
/**
* @return string[]
*/
public function getTags()
{
return $this->tags;
}
/**
* @return \DateTime
*/
public function getCreatedAt()
{
return $this->createdAt;
}
}
|