21 lines
479 B
C#
21 lines
479 B
C#
using System.Diagnostics.CodeAnalysis;
|
|
using System.Net;
|
|
|
|
namespace Pilz.Net.Api;
|
|
|
|
public record class ApiResponse<T>(
|
|
HttpStatusCode StatusCode,
|
|
T? Message)
|
|
where T : ApiMessage
|
|
{
|
|
[MemberNotNullWhen(true, nameof(Message))]
|
|
public bool IsOk => StatusCode == HttpStatusCode.OK && Message is not null;
|
|
|
|
[MemberNotNull(nameof(Message))]
|
|
public void EnsureOk()
|
|
{
|
|
if (!IsOk)
|
|
throw new Exception("Api return is not ok!");
|
|
}
|
|
}
|