From 0039e26be27ccac59bf9f5fe637d12610236c196 Mon Sep 17 00:00:00 2001 From: David Garcia Date: Fri, 8 Dec 2017 09:32:05 +0000 Subject: [PATCH] Add model to map the Parse response --- src/Mailgun/Model/EmailValidation/Parse.php | 67 +++++++++++++++++++++ 1 file changed, 67 insertions(+) create mode 100644 src/Mailgun/Model/EmailValidation/Parse.php diff --git a/src/Mailgun/Model/EmailValidation/Parse.php b/src/Mailgun/Model/EmailValidation/Parse.php new file mode 100644 index 0000000..95fd011 --- /dev/null +++ b/src/Mailgun/Model/EmailValidation/Parse.php @@ -0,0 +1,67 @@ + + */ +final class Parse +{ + /** + * @var array + */ + private $parsed; + + /** + * @var array + */ + private $unparseable; + + /** + * Parse constructor. + * + * @param array $parsed + * @param array $unparseable + */ + private function __construct(array $parsed, array $unparseable) + { + $this->parsed = $parsed; + $this->unparseable = $unparseable; + } + + /** + * @param array $data + * + * @return Parse + */ + public static function create(array $data) + { + return new self( + ((isset($data['parsed']) && is_array($data['parsed'])) ? $data['parsed'] : []), + ((isset($data['unparseable']) && is_array($data['unparseable'])) ? $data['unparseable'] : []) + ); + } + + /** + * @return array + */ + public function getParsed() + { + return $this->parsed; + } + + /** + * @return array + */ + public function getUnparseable() + { + return $this->unparseable; + } +}