53 lines
1.3 KiB
C#
53 lines
1.3 KiB
C#
using Hcs.Broker.Api.Request.Adapter;
|
|
|
|
namespace Hcs.Broker.Api.Request
|
|
{
|
|
public class RequestMultipleResult<T>
|
|
{
|
|
public bool Ready { get; set; }
|
|
|
|
public bool Success { get; set; }
|
|
|
|
public IEnumerable<T?>? Results { get; set; }
|
|
|
|
public string? NextResultsGuid { get; set; }
|
|
|
|
public IErrorMessage? ErrorMessage { get; set; }
|
|
|
|
public static RequestMultipleResult<T> CreateNotReady()
|
|
{
|
|
return new RequestMultipleResult<T>
|
|
{
|
|
Ready = false
|
|
};
|
|
}
|
|
|
|
public static RequestMultipleResult<T> CreateSuccessful(IEnumerable<T?>? results)
|
|
{
|
|
return new RequestMultipleResult<T>
|
|
{
|
|
Ready = true,
|
|
Success = true,
|
|
Results = results
|
|
};
|
|
}
|
|
|
|
public static RequestMultipleResult<T> CreateFailed(IErrorMessage? errorMessage)
|
|
{
|
|
return new RequestMultipleResult<T>
|
|
{
|
|
Ready = true,
|
|
Success = false,
|
|
ErrorMessage = errorMessage
|
|
};
|
|
}
|
|
|
|
public RequestMultipleResult<T> SetNextResultsGuid(string? nextResultsGuid)
|
|
{
|
|
NextResultsGuid = nextResultsGuid;
|
|
|
|
return this;
|
|
}
|
|
}
|
|
}
|