public SpacedockMod GetMod(int modId) { string json; try { json = Call("/mod/" + modId); } catch (NativeAndCurlDownloadFailedKraken e) { // SpaceDock returns a valid json with an error message in case of non 200 codes. json = e.responseContent; } // Check if the mod has been removed from SD. var error = JsonConvert.DeserializeObject <SpacedockError>(json); if (error.error) { var errorMessage = $"Could not get the mod from SpaceDock, reason: {error.reason}"; throw new Kraken(errorMessage); } return(SpacedockMod.FromJson(json)); }
public SpacedockMod GetMod(int modId) { string json; try { json = Call("/mod/" + modId); } catch (WebException e) { // SpaceDock returns a valid json with an error message in case of non 200 codes. json = new System.IO.StreamReader(e.Response.GetResponseStream(), System.Text.Encoding.UTF8).ReadToEnd(); if (string.IsNullOrEmpty(json)) { // ... sometimes. Other times we get nothing. throw; } } // Check if the mod has been removed from SD. var error = JsonConvert.DeserializeObject <SpacedockError>(json); if (error.error) { var errorMessage = $"Could not get the mod from SpaceDock, reason: {error.reason}"; throw new Kraken(errorMessage); } return(SpacedockMod.FromJson(json)); }
public SpacedockMod GetMod(int modId) { var json = Call("/mod/" + modId); // Check if the mod has been removed from SD. var error = JsonConvert.DeserializeObject <SpacedockError>(json); if (error.error) { var errorMessage = string.Format("Could not get the mod from SpaceDock, reason: {0}", error.reason); throw new Kraken(errorMessage); } return(SpacedockMod.FromJson(json)); }