/**
  * @inheritDoc
  */
 public static function toWrappedMessage($message, $transport = null)
 {
     if (!$message instanceof \Swift_Message) {
         throw new MailWrapperSetupException('Invalid Message');
     }
     $wrappedMessage = new MailWrappedMessage();
     $wrappedMessage->setWrappedMessage($message);
     $subject = $message->getSubject();
     $content = $message->getBody();
     $toRecipients = $message->getTo();
     $ccRecipients = $message->getCc();
     $bccRecipients = $message->getBcc();
     $from = $message->getFrom() ? key($message->getFrom()) : null;
     $replyTo = $message->getReplyTo() ? key($message->getReplyTo()) : null;
     //
     $wrappedMessage->setSubject($subject);
     $wrappedMessage->setContentText($content);
     $address = MailManager::isEmailAddress($from);
     if ($address) {
         $wrappedMessage->setFrom($address);
     }
     $address = MailManager::isEmailAddress($replyTo);
     if ($address) {
         $wrappedMessage->setReplyTo($address);
     }
     if ($toRecipients) {
         foreach (array_keys($toRecipients) as $address) {
             $wrappedMessage->addToRecipient($address);
         }
     }
     if ($ccRecipients) {
         foreach (array_keys($ccRecipients) as $address) {
             $wrappedMessage->addCcRecipient($address);
         }
     }
     if ($bccRecipients) {
         foreach (array_keys($bccRecipients) as $address) {
             $wrappedMessage->addBccRecipient($address);
         }
     }
     return $wrappedMessage;
 }
 /**
  * @inheritDoc
  */
 public static function toWrappedMessage($message, $transport = null)
 {
     if (!$message instanceof \PHPMailer) {
         throw new MailWrapperSetupException('Invalid Message');
     }
     $wrappedMessage = new MailWrappedMessage();
     $wrappedMessage->setWrappedMessage($message);
     $subject = $message->Subject;
     $content = $message->Body;
     $from = $message->From;
     $toRecipients = $message->getToAddresses();
     $ccRecipients = $message->getCcAddresses();
     $bccRecipients = $message->getBccAddresses();
     $replyToAddresses = $message->getReplyToAddresses();
     //
     $wrappedMessage->setSubject($subject);
     $wrappedMessage->setContentText($content);
     $address = MailManager::isEmailAddress($from);
     if ($address) {
         $wrappedMessage->setFrom($address);
     }
     foreach ($replyToAddresses as $address) {
         $wrappedMessage->setReplyTo($address[0]);
     }
     foreach ($toRecipients as $address) {
         $wrappedMessage->addToRecipient($address[0]);
     }
     foreach ($ccRecipients as $address) {
         $wrappedMessage->addCcRecipient($address[0]);
     }
     foreach ($bccRecipients as $address) {
         $wrappedMessage->addBccRecipient($address[0]);
     }
     return $wrappedMessage;
 }