diff --git a/Ombi.Api/ApiRequest.cs b/Ombi.Api/ApiRequest.cs index 32b2f060f..65d2455fd 100644 --- a/Ombi.Api/ApiRequest.cs +++ b/Ombi.Api/ApiRequest.cs @@ -56,9 +56,8 @@ namespace Ombi.Api public T Execute(IRestRequest request, Uri baseUri) where T : new() { var client = new RestClient { BaseUrl = baseUri }; - var response = client.Execute(request); - Log.Trace($"Request made to {client.BaseUrl} with details of {request.ToString()}. The response was {response.Content}"); + Log.Trace($"Request made to {client.BaseUrl} with status code {response.StatusCode}. The response was {response.Content}"); if (response.ErrorException != null) { @@ -67,15 +66,16 @@ namespace Ombi.Api throw new ApiRequestException(message, response.ErrorException); } - return response.Data; + if (response.StatusCode != HttpStatusCode.OK) + return default(T); + else + return response.Data; } public IRestResponse Execute(IRestRequest request, Uri baseUri) { var client = new RestClient { BaseUrl = baseUri }; - var response = client.Execute(request); - return response; } @@ -83,7 +83,7 @@ namespace Ombi.Api { var client = new RestClient { BaseUrl = baseUri }; var response = client.Execute(request); - Log.Trace($"Request made to {client.BaseUrl} with details of {request.ToString()}. The response was {response.Content}"); + Log.Trace($"Request made to {client.BaseUrl} with status code {response.StatusCode}. The response was {response.Content}"); if (response.ErrorException != null) { @@ -92,7 +92,9 @@ namespace Ombi.Api throw new ApiRequestException(message, response.ErrorException); } - var result = DeserializeXml(response.Content); + T result = default(T); + if (response.StatusCode == HttpStatusCode.OK) + result = DeserializeXml(response.Content); return result; } @@ -100,7 +102,8 @@ namespace Ombi.Api { var client = new RestClient { BaseUrl = baseUri }; var response = client.Execute(request); - Log.Trace($"Request made to {client.BaseUrl} with details of {request.ToString()}. The response was {response.Content}"); + Log.Trace($"Request made to {client.BaseUrl} with status code {response.StatusCode}. The response was {response.Content}"); + if (response.ErrorException != null) { Log.Error(response.ErrorException); @@ -108,8 +111,10 @@ namespace Ombi.Api throw new ApiRequestException(message, response.ErrorException); } - var json = JsonConvert.DeserializeObject(response.Content, _settings); - return json; + T result = default(T); + if (response.StatusCode == HttpStatusCode.OK) + result = JsonConvert.DeserializeObject(response.Content, _settings); + return result; } private T DeserializeXml(string input) diff --git a/Ombi.Core/HeadphonesSender.cs b/Ombi.Core/HeadphonesSender.cs index f652eb56e..7fb971c9e 100644 --- a/Ombi.Core/HeadphonesSender.cs +++ b/Ombi.Core/HeadphonesSender.cs @@ -79,7 +79,7 @@ namespace Ombi.Core request.Approved = true; // Update the record - var updated = RequestService.UpdateRequest(request); + bool updated = RequestService.UpdateRequest(request); return updated; } @@ -90,7 +90,7 @@ namespace Ombi.Core var artistExists = index.Any(x => x.ArtistID == request.ArtistId); if (!artistExists) { - var artistAdd = await Api.AddArtist(Settings.ApiKey, Settings.FullUri, request.ArtistId); + bool artistAdd = await Api.AddArtist(Settings.ApiKey, Settings.FullUri, request.ArtistId); Log.Info("Artist add result for {1}: {0}", artistAdd, request.ArtistName); }