37 lines
840 B
C#
37 lines
840 B
C#
|
using System;
|
|||
|
using System.Text;
|
|||
|
using Newtonsoft.Json;
|
|||
|
namespace Leadercraft.Server
|
|||
|
{
|
|||
|
internal class LeadercraftResult<T>
|
|||
|
{
|
|||
|
private string _responseJson;
|
|||
|
|
|||
|
public readonly int StatusCode;
|
|||
|
|
|||
|
public bool IsError { get => StatusCode < 200 || StatusCode > 299; }
|
|||
|
|
|||
|
public ResultStruct<T> ParseResult()
|
|||
|
{
|
|||
|
return JsonConvert.DeserializeObject<ResultStruct<T>>(_responseJson);
|
|||
|
}
|
|||
|
|
|||
|
public ResultStruct<string> ParseError()
|
|||
|
{
|
|||
|
return JsonConvert.DeserializeObject<ResultStruct<string>>(_responseJson);
|
|||
|
}
|
|||
|
|
|||
|
public LeadercraftResult(string response, int status = 200)
|
|||
|
{
|
|||
|
this._responseJson = response;
|
|||
|
this.StatusCode = status;
|
|||
|
}
|
|||
|
|
|||
|
public LeadercraftResult(byte[] response, int status = 200)
|
|||
|
{
|
|||
|
this._responseJson = Encoding.ASCII.GetString(response);
|
|||
|
this.StatusCode = status;
|
|||
|
}
|
|||
|
}
|
|||
|
}
|