public bool Save(PutStreamStatusRequest request) { try { using (var context = _chatbotContextFactory.Create()) { var currentStatus = context.StreamStatuses.FirstOrDefault(s => s.BroadcasterUsername == request.BroadcasterUsername); if (currentStatus == null) { currentStatus = new Database.Context.Models.StreamStatus { BroadcasterUsername = request.BroadcasterUsername, IsOnline = request.IsOnline }; context.StreamStatuses.Add(currentStatus); context.SaveChanges(); return(true); } currentStatus.IsOnline = request.IsOnline; context.SaveChanges(); return(true); } } catch (Exception e) { _logger.LogError(e, $"Exception caught when saving Stream Status. broadcasterUsername: {request.BroadcasterUsername}, isOnline: {request.IsOnline}"); return(false); } }
public void SuccessWhen_ValueIsReturned_RepositoryCalled( PutStreamStatusRequest request) { var result = _subject.Save(request); _saveStreamStatusRepository.Verify(s => s.Save(request), Times.Once); Assert.AreEqual(_successValue, result); }
public async Task <bool> SaveStreamStatus(PutStreamStatusRequest putStreamStatusRequest) { try { var result = await _streamStatusClient.PutAsync("PutStreamStatus", HttpClientHelper.GetJsonData(putStreamStatusRequest)); return(result.IsSuccessStatusCode); } catch (Exception e) { return(HttpClientHelper.LogError <bool>(_logger, e, new object[] { putStreamStatusRequest.BroadcasterUsername, putStreamStatusRequest.IsOnline })); } }
public IActionResult PutStreamStatus([FromBody] PutStreamStatusRequest streamStatusRequest) { try { if (_saveStreamStatusCommand.Save(streamStatusRequest)) { return(Ok()); } } catch (Exception e) { _logger.LogError(e, "Error in PutStreamStatus"); Console.Error.WriteLine($"Could not save stream status. Exception: {e} - {e.InnerException}"); } return(BadRequest()); }
public bool Save(PutStreamStatusRequest request) { var result = _saveStreamStatusRepository.Save(request); return(result); }