31 lines
966 B
C#
31 lines
966 B
C#
using ln.type.rpc;
|
|
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;
|
|
}
|
|
}
|
|
}
|