/// <summary>
 /// Updates the message status.
 /// </summary>
 /// <param name="status">The message status.</param>
 /// <returns></returns>
 public static bool UpdateStatus(IMessage message, MessageStatus status)
 {
     try
     {
         // Update message status in database
         OutgoingMessage outgoingMessage = OutgoingMessage.SingleOrDefault(msg => msg.Id == message.Identifier);
         if (outgoingMessage == null)
         {
             return(false);
         }
         outgoingMessage.Status     = StringEnum.GetStringValue(status);
         outgoingMessage.LastUpdate = DateTime.Now;
         if (status == MessageStatus.Sent)
         {
             outgoingMessage.SentDate = outgoingMessage.LastUpdate;
         }
         outgoingMessage.Update();
     }
     catch (Exception ex)
     {
         log.Error(string.Format("Error updating message: {0} ", ex.Message), ex);
         return(false);
     }
     return(true);
 }