ln.json/ln.json/mapping/JSONRPCResultMapping.cs

31 lines
966 B
C#
Raw Normal View History

2020-11-18 00:36:18 +01:00
using ln.type.rpc;
2019-08-19 14:12:57 +02:00
namespace ln.json.mapping
{
public class JSONRPCResultMapping : JSONMapping
{
public JSONRPCResultMapping() : base(typeof(RPCResult))
{
}
public override JSONValue ToJson(JSONMapper mapper, object value)
{
RPCResult rpcresult = value as RPCResult;
JSONObject result = new JSONObject();
result["id"] = JSONMapper.DefaultMapper.ToJson(rpcresult.Identifier);
if (rpcresult.ErrorText != null)
{
result["error"] = new JSONObject();
result["error"]["message"] = JSONMapper.DefaultMapper.ToJson(rpcresult.ErrorText);
result["error"]["exception"] = JSONMapper.DefaultMapper.ToJson(rpcresult.Exception);
}
else
{
result["result"] = JSONMapper.DefaultMapper.ToJson(rpcresult.Result);
}
return result;
}
}
}