public async Task <FlareMessage> ReadFlareMessage(string token) { FlareMessage message = await GetFlareMessageByToken(token); if (message == null) { return(null); } message.Read = true; return(await FlareMessageRepository.Update(message)); }
public async Task <FlareMessage> ReadFlareMessage(Guid id) { FlareMessage message = await GetFlareMessageById(id); if (message == null) { return(null); } message.Read = true; return(await FlareMessageRepository.Update(message)); }
private bool ValidateFlareMessage(FlareMessage message) { if (message.RecipientId == Guid.Empty) { throw new ArgumentException("Flare Message must have a recipient id!"); } if (message.FlareId == Guid.Empty) { throw new ArgumentException("Flare Message must have a flare id!"); } return(true); }
public async Task <FlareMessage> CreateFlareMessage(FlareMessage message, FlareMessageType messageType) { if (!ValidateFlareMessage(message)) { throw new ArgumentException("Invalid Flare Message"); } if (message.Id == Guid.Empty) { message.Id = Guid.NewGuid(); } if (string.IsNullOrWhiteSpace(message.Token)) { CryptoProvider crypt = new CryptoProvider(); message.Token = crypt.CreateUrlKey(); } if (messageType == FlareMessageType.Email) { message.MessageType = "email"; } else if (messageType == FlareMessageType.Sms) { message.MessageType = "sms"; } else if (messageType == FlareMessageType.PhoneCall) { message.MessageType = "phone"; } message = await FlareMessageRepository.Create(message); return(message); }