/**
  * @param Message $message
  * @param User    $from
  *
  * @return MessageValueObject
  */
 private function populateMessageValueObject(Message $message, User $from = null)
 {
     if (null === $from) {
         $from = $message->getUser();
     }
     if (null === $from) {
         throw new InvalidParameterException('You must provide the user who wrote the message');
     }
     $from = $this->populateUserValueObject($from);
     $conversation = $message->getConversation()->getId();
     return new MessageValueObject($message->getId(), $from, $conversation, $message->getText());
 }