/// <summary> /// Checks that response does not containt errors. /// </summary> /// <param name="response">The response.</param> /// <exception cref="ReviewBoardException">Throw if the REST call was unsuccesful.</exception> private void CheckResponse(IRestResponse response) { if (response == null) { throw new ReviewBoardException("Null response from review board."); } if (response.Content.IndexOf("\"err\":", StringComparison.Ordinal) >= 0) { ReviewBoardErrorResponse error; try { var deserializer = new JsonDeserializer { RootElement = "err" }; error = deserializer.Deserialize <ReviewBoardErrorResponse>(response); } catch (Exception e) { throw new ReviewBoardException("Unable to deserialize error response.", e); } if (error != null) { switch (error.Code) { case "103": case "101": case "218": ClearCookieFile(); throw new ReviewBoardAuthenticationException(); default: var e = new ReviewBoardException("A Review Board error occured. Code: " + error.Code + ". Message: " + error.Msg); e.Data.Add("Error details", response.Content); throw e; } } } ProcessResponseCookies(response); }
/// <summary> /// Checks that response does not containt errors. /// </summary> /// <param name="response">The response.</param> /// <exception cref="ReviewBoardException">Throw if the REST call was unsuccesful.</exception> private void CheckResponse(IRestResponse response) { if (response == null) { throw new ReviewBoardException("Null response from review board."); } if (response.Content.IndexOf("\"err\":", StringComparison.Ordinal) >= 0) { ReviewBoardErrorResponse error; try { var deserializer = new JsonDeserializer { RootElement = "err" }; error = deserializer.Deserialize<ReviewBoardErrorResponse>(response); } catch (Exception e) { throw new ReviewBoardException("Unable to deserialize error response.", e); } if (error != null) { switch (error.Code) { case "103": case "101": case "218": ClearCookieFile(); throw new ReviewBoardAuthenticationException(); default: var e = new ReviewBoardException("A Review Board error occured. Code: " + error.Code + ". Message: " + error.Msg); e.Data.Add("Error details", response.Content); throw e; } } } ProcessResponseCookies(response); }