//public WebSiteCloudException( // string message, // string code, // Exception innerException) // : base(message, innerException) //{ //} /// <summary> /// Create a CloudException from a failed response. /// </summary> /// <param name="request">The HTTP request.</param> /// <param name="requestContent">The HTTP request content.</param> /// <param name="response">The HTTP response.</param> /// <param name="responseContent">The HTTP response content.</param> /// <param name="innerException">Optional inner exception.</param> /// <returns>A CloudException representing the failure.</returns> public static /*new*/ CloudException CreateResourceCloudExceptionTemporaryImplementation( HttpRequestMessage request, string requestContent, HttpResponseMessage response, string responseContent, Exception innerException = null) { Tuple <string, string> tuple = ParseResourceProviderJsonError(responseContent); string code = tuple.Item1; string message = tuple.Item2; // Get the most descriptive message that we can string exceptionMessage = (code != null && message != null) ? code + ": " + message : (message != null) ? message : (code != null) ? code : (responseContent != null) ? responseContent : (response != null && response.ReasonPhrase != null) ? response.ReasonPhrase : (response != null) ? response.StatusCode.ToString() : new InvalidOperationException().Message; // Create the exception CloudException exception = new WebSiteCloudException( exceptionMessage, innerException); return(exception); }
/// <summary> /// Create a CloudException from a failed response. /// </summary> /// <param name="request">The HTTP request.</param> /// <param name="requestContent">The HTTP request content.</param> /// <param name="response">The HTTP response.</param> /// <param name="responseContent">The HTTP response content.</param> /// <param name="innerException">Optional inner exception.</param> /// <returns>A CloudException representing the failure.</returns> public static /*new*/ CloudException CreateResourceCloudExceptionTemporaryImplementation( HttpRequestMessage request, string requestContent, HttpResponseMessage response, string responseContent, Exception innerException = null) { Tuple<string, string> tuple = ParseResourceProviderJsonError(responseContent); string code = tuple.Item1; string message = tuple.Item2; // Get the most descriptive message that we can string exceptionMessage = (code != null && message != null) ? code + ": " + message : (message != null) ? message : (code != null) ? code : (responseContent != null) ? responseContent : (response != null && response.ReasonPhrase != null) ? response.ReasonPhrase : (response != null) ? response.StatusCode.ToString() : new InvalidOperationException().Message; // Create the exception CloudException exception = new WebSiteCloudException( exceptionMessage, code, CloudHttpRequestErrorInfo.Create(request, requestContent), CloudHttpResponseErrorInfo.Create(response, responseContent), innerException); return exception; }