Created
January 20, 2022 07:17
-
-
Save fnicollier/c7bd2daacace1828d3e9b0de54b328fe to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
public sealed class Output | |
{ | |
/// <summary> | |
/// The HTTP status. | |
/// </summary> | |
public int? HttpStatus { get; set; } = (int) HttpStatusCode.OK; | |
/// <summary> | |
/// The response. | |
/// </summary> | |
public object? Response { get; set; } | |
/// <summary> | |
/// Get the serialized response. | |
/// </summary> | |
public string GetResponse() => JsonConvert.SerializeObject(Response); | |
/// <summary> | |
/// Creates an OK response. | |
/// </summary> | |
/// <param name="response">The response content.</param> | |
public Output Ok(object response) | |
{ | |
HttpStatus = (int) HttpStatusCode.OK; | |
Response = response; | |
return this; | |
} | |
/// <summary> | |
/// Creates a bad request response. | |
/// </summary> | |
/// <param name="response">The response content.</param> | |
public Output BadRequest(object response) | |
{ | |
HttpStatus = (int)HttpStatusCode.BadRequest; | |
Response = response; | |
return this; | |
} | |
/// <summary> | |
/// Creates a not found response. | |
/// </summary> | |
/// <param name="response">The response content.</param> | |
public Output NotFound(object response) | |
{ | |
HttpStatus = (int)HttpStatusCode.NotFound; | |
Response = response; | |
return this; | |
} | |
/// <summary> | |
/// Creates a no content. | |
/// </summary> | |
public Output NoContent() | |
{ | |
HttpStatus = (int)HttpStatusCode.NoContent; | |
return this; | |
} | |
/// <summary> | |
/// Creates an internal error response. | |
/// </summary> | |
/// <param name="response">The response content.</param> | |
public Output InternalError(object response) | |
{ | |
HttpStatus = (int)HttpStatusCode.InternalServerError; | |
Response = response; | |
return this; | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment