forked from loafle/openapi-generator-original
* rename csharp-netcore to csharp * rename file * renmae modules/openapi-generator/src/main/resources/csharp-netcore * update samples * mv dir * update samples * rename csharp-netcore to csharp in appveyor.yml * update doc
167 lines
5.0 KiB
C#
167 lines
5.0 KiB
C#
/*
|
|
* OpenAPI Petstore
|
|
*
|
|
* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters.
|
|
*
|
|
* The version of the OpenAPI document: 1.0.0
|
|
* Generated by: https://github.com/openapitools/openapi-generator.git
|
|
*/
|
|
|
|
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Net;
|
|
|
|
namespace Org.OpenAPITools.Client
|
|
{
|
|
/// <summary>
|
|
/// Provides a non-generic contract for the ApiResponse wrapper.
|
|
/// </summary>
|
|
public interface IApiResponse
|
|
{
|
|
/// <summary>
|
|
/// The data type of <see cref="Content"/>
|
|
/// </summary>
|
|
Type ResponseType { get; }
|
|
|
|
/// <summary>
|
|
/// The content of this response
|
|
/// </summary>
|
|
Object Content { get; }
|
|
|
|
/// <summary>
|
|
/// Gets or sets the status code (HTTP status code)
|
|
/// </summary>
|
|
/// <value>The status code.</value>
|
|
HttpStatusCode StatusCode { get; }
|
|
|
|
/// <summary>
|
|
/// Gets or sets the HTTP headers
|
|
/// </summary>
|
|
/// <value>HTTP headers</value>
|
|
Multimap<string, string> Headers { get; }
|
|
|
|
/// <summary>
|
|
/// Gets or sets any error text defined by the calling client.
|
|
/// </summary>
|
|
string ErrorText { get; set; }
|
|
|
|
/// <summary>
|
|
/// 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>
|
|
/// API Response
|
|
/// </summary>
|
|
public class ApiResponse<T> : IApiResponse
|
|
{
|
|
#region Properties
|
|
|
|
/// <summary>
|
|
/// Gets or sets the status code (HTTP status code)
|
|
/// </summary>
|
|
/// <value>The status code.</value>
|
|
public HttpStatusCode StatusCode { get; }
|
|
|
|
/// <summary>
|
|
/// Gets or sets the HTTP headers
|
|
/// </summary>
|
|
/// <value>HTTP headers</value>
|
|
public Multimap<string, string> Headers { get; }
|
|
|
|
/// <summary>
|
|
/// Gets or sets the data (parsed HTTP body)
|
|
/// </summary>
|
|
/// <value>The data.</value>
|
|
public T Data { get; }
|
|
|
|
/// <summary>
|
|
/// Gets or sets any error text defined by the calling client.
|
|
/// </summary>
|
|
public string ErrorText { get; set; }
|
|
|
|
/// <summary>
|
|
/// Gets or sets any cookies passed along on the response.
|
|
/// </summary>
|
|
public List<Cookie> Cookies { get; set; }
|
|
|
|
/// <summary>
|
|
/// The content of this response
|
|
/// </summary>
|
|
public Type ResponseType
|
|
{
|
|
get { return typeof(T); }
|
|
}
|
|
|
|
/// <summary>
|
|
/// The data type of <see cref="Content"/>
|
|
/// </summary>
|
|
public object Content
|
|
{
|
|
get { return Data; }
|
|
}
|
|
|
|
/// <summary>
|
|
/// The raw content
|
|
/// </summary>
|
|
public string RawContent { get; }
|
|
|
|
#endregion Properties
|
|
|
|
#region Constructors
|
|
|
|
/// <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>
|
|
/// <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>
|
|
/// 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>
|
|
/// <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)
|
|
{
|
|
}
|
|
|
|
#endregion Constructors
|
|
}
|
|
}
|