internal MessageDomain(StructMessage message)
 {
     _isEmpty = false;
     if (IsValid(message))
     {
         Message = message;
     }
     else
     {
         Dispose();
     }
 }
        private bool IsValid(StructMessage message)
        {
            switch (message.MessageType)
            {
            case MessageType.chat:
                if (message.IdReceiver == 0)
                {
                    return(false);
                }
                if (message.Content == null)
                {
                    return(false);
                }
                break;

            case MessageType.email:
                if (message.Email == null)
                {
                    return(false);
                }
                // if regex email valid
                if (message.Title == null)
                {
                    return(false);
                }
                if (message.Content == null)
                {
                    return(false);
                }
                break;

            case MessageType.notification:
                if (message.IdReceiver == 0)
                {
                    return(false);
                }
                break;
            }
            return(true);
        }