1 <?php
2 namespace DevStrefa\Esemeser;
3
4 5 6 7 8 9 10 11 12 13
14
15 class Message
16 {
17 private $clientName;
18 private $phoneNumber;
19 private $message;
20 private $messageType;
21
22 23 24 25 26 27 28 29
30 public function __construct($clientName=null,$phoneNumber=null,$message=null,$messageType=null)
31 {
32
33 if ($clientName!=null){
34 $this->setClientName($clientName);
35 }
36
37 if ($phoneNumber!=null){
38 $this->setPhoneNumber($phoneNumber);
39 }
40
41 if ($message!=null){
42 $this->setMessage($message);
43 }
44
45 if ($messageType!=null){
46 $this->setMessageType($messageType);
47 }
48
49 }
50
51 52 53 54
55 public function setClientName($clientName)
56 {
57 $this->clientName = $clientName;
58 return $this;
59 }
60
61 62 63 64
65 public function setPhoneNumber($phoneNumber)
66 {
67
68 if (preg_match('/^[0-9]{9}$/',$phoneNumber)){
69 $this->phoneNumber = $phoneNumber;
70 return $this;
71 }
72
73 throw new \InvalidArgumentException('Incorrect Phone Number');
74 }
75
76 77 78 79
80 public function setMessage($message)
81 {
82 $this->message = $message;
83 return $this;
84 }
85
86 87 88 89
90 public function setMessageType($messageType)
91 {
92 if (!MessageType::typeIsValid($messageType)){
93 throw new \InvalidArgumentException('Incorrect Message Type');
94 }
95
96 $this->messageType = $messageType;
97 return $this;
98 }
99
100 101 102
103 public function getClientName()
104 {
105 return $this->clientName;
106 }
107
108 109 110
111 public function getPhoneNumber()
112 {
113 return $this->phoneNumber;
114 }
115
116 117 118
119 public function getMessage()
120 {
121 return $this->message;
122 }
123
124 125 126
127 public function getMessageType()
128 {
129 return $this->messageType;
130 }
131
132
133
134
135
136
137 }