using System.Collections.Generic; using System.Net; namespace Bit.Core.Models { public class ApiResult { private List m_errors = new List(); public bool Succeeded { get; private set; } public T Result { get; set; } public IEnumerable Errors => m_errors; public HttpStatusCode StatusCode { get; private set; } public static ApiResult Success(T result, HttpStatusCode statusCode) { return new ApiResult { Succeeded = true, Result = result, StatusCode = statusCode }; } public static ApiResult Failed(HttpStatusCode statusCode, params ApiError[] errors) { var result = new ApiResult { Succeeded = false, StatusCode = statusCode }; if(errors != null) { result.m_errors.AddRange(errors); } return result; } } public class ApiResult { private List m_errors = new List(); public bool Succeeded { get; private set; } public IEnumerable Errors => m_errors; public HttpStatusCode StatusCode { get; private set; } public static ApiResult Success(HttpStatusCode statusCode) { return new ApiResult { Succeeded = true, StatusCode = statusCode }; } public static ApiResult Failed(HttpStatusCode statusCode, params ApiError[] errors) { var result = new ApiResult { Succeeded = false, StatusCode = statusCode }; if(errors != null) { result.m_errors.AddRange(errors); } return result; } } }