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