public MessageDataDto GetById(int id) { var messageData = _repository.GetById(id); if (messageData == default(MessageData)) { return(default(MessageDataDto)); } return(MessageDataDto.FromEntity(messageData)); }
public void NotifySubscribers(MessageData messageData) { var subscribers = _notificationManager.GetSubscriberConnections(messageData.PublisherId); var dto = MessageDataDto.FromEntity(messageData); var settings = new JsonSerializerSettings(); subscribers.AsParallel().ForAll(x => { string json = JsonConvert.SerializeObject(dto); x.SendText(json); }); }
public MessageDataDto GetByMessageId(Guid messageId) { var specification = new Specification <MessageData>(x => x.MessageId.Equals(messageId)); var messageData = _repository.GetBySpecification(specification).SingleOrDefault(); if (messageData == default(MessageData)) { return(default(MessageDataDto)); } return(MessageDataDto.FromEntity(messageData)); }
public void InsertMessageData(MessageDataDto messageData) { _logger.LogInformation("Inserting data in database"); var messageDataToInsert = new MessageData { MessageText = messageData.MessageText }; _context.MessageDatas.Add(messageDataToInsert); _context.SaveChanges(); _logger.LogInformation("Data successfully inserted. ID: " + messageDataToInsert.MessageDataId); }
public async Task <IActionResult> PostMessageData([FromBody] MessageData messageData) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } await Task.Factory.StartNew(() => { _messageDataService.AddOne(messageData); _messageNotificationService.NotifySubscribers(messageData); } ); return(CreatedAtAction("GetMessageData", new { id = messageData.Id }, MessageDataDto.FromEntity(messageData))); }
public IEnumerable <MessageDataDto> GetLatestByPublisherId(Guid publisherId, DateTime afterDate) { var specification = new Specification <MessageData>(x => x.PublisherId.Equals(publisherId) && (x.Timestamp > afterDate)); return(_repository.GetBySpecification(specification).Select(x => MessageDataDto.FromEntity(x))); }
public IEnumerable <MessageDataDto> GetByPublisherId(Guid publisherId, bool forwarded) { var specification = new Specification <MessageData>(x => x.PublisherId.Equals(publisherId) && (x.Forwarded == forwarded)); return(_repository.GetBySpecification(specification).Select(x => MessageDataDto.FromEntity(x))); }
public IEnumerable <MessageDataDto> GetAll() { return(_repository.GetAll().Select(x => MessageDataDto.FromEntity(x))); }