Merge branch '4.3.x' into 5.0.x

This commit is contained in:
William Cheng
2019-11-21 15:19:31 +08:00
1736 changed files with 27265 additions and 4446 deletions

View File

@@ -350,7 +350,9 @@ namespace Org.OpenAPITools.Client
private ApiResponse<T> toApiResponse<T>(IRestResponse<T> response)
{
T result = response.Data;
var transformed = new ApiResponse<T>(response.StatusCode, new Multimap<string, string>(), result)
string rawContent = response.Content;
var transformed = new ApiResponse<T>(response.StatusCode, new Multimap<string, string>(), result, rawContent)
{
ErrorText = response.ErrorMessage,
Cookies = new List<Cookie>()

View File

@@ -51,6 +51,11 @@ namespace Org.OpenAPITools.Client
/// Gets or sets any cookies passed along on the response.
/// </summary>
List<Cookie> Cookies { get; set; }
/// <summary>
/// The raw content of this response
/// </summary>
string RawContent { get; }
}
/// <summary>
@@ -103,6 +108,11 @@ namespace Org.OpenAPITools.Client
{
get { return Data; }
}
/// <summary>
/// The raw content
/// </summary>
public string RawContent { get;}
#endregion Properties
@@ -114,11 +124,23 @@ namespace Org.OpenAPITools.Client
/// <param name="statusCode">HTTP status code.</param>
/// <param name="headers">HTTP headers.</param>
/// <param name="data">Data (parsed HTTP body)</param>
public ApiResponse(HttpStatusCode statusCode, Multimap<string, string> headers, T data)
/// <param name="rawContent">Raw content.</param>
public ApiResponse(HttpStatusCode statusCode, Multimap<string, string> headers, T data, string rawContent)
{
StatusCode = statusCode;
Headers = headers;
Data = data;
RawContent = rawContent;
}
/// <summary>
/// Initializes a new instance of the <see cref="ApiResponse{T}" /> class.
/// </summary>
/// <param name="statusCode">HTTP status code.</param>
/// <param name="headers">HTTP headers.</param>
/// <param name="data">Data (parsed HTTP body)</param>
public ApiResponse(HttpStatusCode statusCode, Multimap<string, string> headers, T data) : this(statusCode, headers, data, null)
{
}
/// <summary>
@@ -126,10 +148,18 @@ namespace Org.OpenAPITools.Client
/// </summary>
/// <param name="statusCode">HTTP status code.</param>
/// <param name="data">Data (parsed HTTP body)</param>
public ApiResponse(HttpStatusCode statusCode, T data)
/// <param name="rawContent">Raw content.</param>
public ApiResponse(HttpStatusCode statusCode, T data, string rawContent) : this(statusCode, null, data, rawContent)
{
}
/// <summary>
/// Initializes a new instance of the <see cref="ApiResponse{T}" /> class.
/// </summary>
/// <param name="statusCode">HTTP status code.</param>
/// <param name="data">Data (parsed HTTP body)</param>
public ApiResponse(HttpStatusCode statusCode, T data) : this(statusCode, data, null)
{
StatusCode = statusCode;
Data = data;
}
#endregion Constructors

View File

@@ -52,8 +52,8 @@ namespace Org.OpenAPITools.Client
if (status >= 400)
{
return new ApiException(status,
string.Format("Error calling {0}: {1}", methodName, response.Content),
response.Content);
string.Format("Error calling {0}: {1}", methodName, response.RawContent),
response.RawContent);
}
return null;

View File

@@ -351,7 +351,9 @@ namespace Org.OpenAPITools.Client
private ApiResponse<T> toApiResponse<T>(IRestResponse<T> response)
{
T result = response.Data;
var transformed = new ApiResponse<T>(response.StatusCode, new Multimap<string, string>(), result)
string rawContent = response.Content;
var transformed = new ApiResponse<T>(response.StatusCode, new Multimap<string, string>(), result, rawContent)
{
ErrorText = response.ErrorMessage,
Cookies = new List<Cookie>()

View File

@@ -51,6 +51,11 @@ namespace Org.OpenAPITools.Client
/// Gets or sets any cookies passed along on the response.
/// </summary>
List<Cookie> Cookies { get; set; }
/// <summary>
/// The raw content of this response
/// </summary>
string RawContent { get; }
}
/// <summary>
@@ -103,6 +108,11 @@ namespace Org.OpenAPITools.Client
{
get { return Data; }
}
/// <summary>
/// The raw content
/// </summary>
public string RawContent { get;}
#endregion Properties
@@ -114,11 +124,23 @@ namespace Org.OpenAPITools.Client
/// <param name="statusCode">HTTP status code.</param>
/// <param name="headers">HTTP headers.</param>
/// <param name="data">Data (parsed HTTP body)</param>
public ApiResponse(HttpStatusCode statusCode, Multimap<string, string> headers, T data)
/// <param name="rawContent">Raw content.</param>
public ApiResponse(HttpStatusCode statusCode, Multimap<string, string> headers, T data, string rawContent)
{
StatusCode = statusCode;
Headers = headers;
Data = data;
RawContent = rawContent;
}
/// <summary>
/// Initializes a new instance of the <see cref="ApiResponse{T}" /> class.
/// </summary>
/// <param name="statusCode">HTTP status code.</param>
/// <param name="headers">HTTP headers.</param>
/// <param name="data">Data (parsed HTTP body)</param>
public ApiResponse(HttpStatusCode statusCode, Multimap<string, string> headers, T data) : this(statusCode, headers, data, null)
{
}
/// <summary>
@@ -126,10 +148,18 @@ namespace Org.OpenAPITools.Client
/// </summary>
/// <param name="statusCode">HTTP status code.</param>
/// <param name="data">Data (parsed HTTP body)</param>
public ApiResponse(HttpStatusCode statusCode, T data)
/// <param name="rawContent">Raw content.</param>
public ApiResponse(HttpStatusCode statusCode, T data, string rawContent) : this(statusCode, null, data, rawContent)
{
}
/// <summary>
/// Initializes a new instance of the <see cref="ApiResponse{T}" /> class.
/// </summary>
/// <param name="statusCode">HTTP status code.</param>
/// <param name="data">Data (parsed HTTP body)</param>
public ApiResponse(HttpStatusCode statusCode, T data) : this(statusCode, data, null)
{
StatusCode = statusCode;
Data = data;
}
#endregion Constructors

View File

@@ -52,8 +52,8 @@ namespace Org.OpenAPITools.Client
if (status >= 400)
{
return new ApiException(status,
string.Format("Error calling {0}: {1}", methodName, response.Content),
response.Content);
string.Format("Error calling {0}: {1}", methodName, response.RawContent),
response.RawContent);
}
if (status == 0)
{