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;
|
|||
|
}
|
|||
|
}
|
|||
|
}
|