...
This commit is contained in:
@@ -81,18 +81,9 @@
|
||||
],
|
||||
"result": {
|
||||
"name": "result",
|
||||
"description": "Success result with deleted comment ID",
|
||||
"description": "Success result",
|
||||
"schema": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"success": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"id": {
|
||||
"type": "integer",
|
||||
"minimum": 0
|
||||
}
|
||||
}
|
||||
"type": "boolean"
|
||||
}
|
||||
}
|
||||
},
|
||||
@@ -210,18 +201,9 @@
|
||||
],
|
||||
"result": {
|
||||
"name": "result",
|
||||
"description": "Success result with deleted calendar ID",
|
||||
"description": "Success result",
|
||||
"schema": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"success": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"id": {
|
||||
"type": "integer",
|
||||
"minimum": 0
|
||||
}
|
||||
}
|
||||
"type": "boolean"
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
@@ -56,9 +56,7 @@ pub fn calendar_set(request jsonrpc.Request) !jsonrpc.Response {
|
||||
|
||||
id := mydb.calendar.set(calendar_obj)!
|
||||
|
||||
return jsonrpc.new_response(request.id, json.encode({
|
||||
'id': id
|
||||
}))
|
||||
return jsonrpc.new_response_u32(request.id, id)
|
||||
}
|
||||
|
||||
pub fn calendar_delete(request jsonrpc.Request) !jsonrpc.Response {
|
||||
@@ -70,7 +68,7 @@ pub fn calendar_delete(request jsonrpc.Request) !jsonrpc.Response {
|
||||
mydb.calendar.delete(payload.id)!
|
||||
|
||||
// returns
|
||||
return jsonrpc.new_response(request.id, 'true')
|
||||
return jsonrpc.new_response_true(request.id) // return true as jsonrpc (bool)
|
||||
}
|
||||
|
||||
pub fn calendar_list(request jsonrpc.Request) !jsonrpc.Response {
|
||||
|
||||
@@ -50,9 +50,7 @@ pub fn comment_set(request jsonrpc.Request) !jsonrpc.Response {
|
||||
|
||||
id := mydb.comments.set(comment_obj)!
|
||||
|
||||
return jsonrpc.new_response(request.id, json.encode({
|
||||
'id': id
|
||||
}))
|
||||
return jsonrpc.new_response_u32(request.id, id)
|
||||
}
|
||||
|
||||
pub fn comment_delete(request jsonrpc.Request) !jsonrpc.Response {
|
||||
@@ -63,7 +61,7 @@ pub fn comment_delete(request jsonrpc.Request) !jsonrpc.Response {
|
||||
mut mydb := heromodels.new()!
|
||||
mydb.comments.delete(payload.id)!
|
||||
|
||||
return jsonrpc.new_response(request.id, 'true')
|
||||
return jsonrpc.new_response_true(request.id) // return true as jsonrpc (bool)
|
||||
}
|
||||
|
||||
pub fn comment_list(request jsonrpc.Request) !jsonrpc.Response {
|
||||
|
||||
@@ -40,6 +40,38 @@ pub fn new_response(id int, result string) Response {
|
||||
}
|
||||
}
|
||||
|
||||
pub fn new_response_true(id int) Response {
|
||||
return Response{
|
||||
jsonrpc: jsonrpc_version
|
||||
result: 'true'
|
||||
id: id
|
||||
}
|
||||
}
|
||||
|
||||
pub fn new_response_false(id int) Response {
|
||||
return Response{
|
||||
jsonrpc: jsonrpc_version
|
||||
result: 'false'
|
||||
id: id
|
||||
}
|
||||
}
|
||||
|
||||
pub fn new_response_int(id int, result int) Response {
|
||||
return Response{
|
||||
jsonrpc: jsonrpc_version
|
||||
result: result.str()
|
||||
id: id
|
||||
}
|
||||
}
|
||||
|
||||
pub fn new_response_u32(id int, result u32) Response {
|
||||
return Response{
|
||||
jsonrpc: jsonrpc_version
|
||||
result: result.str()
|
||||
id: id
|
||||
}
|
||||
}
|
||||
|
||||
// new_error_response creates an error JSON-RPC response with the given error object.
|
||||
//
|
||||
// Parameters:
|
||||
@@ -65,7 +97,9 @@ pub fn new_error_response(id int, error RPCError) Response {
|
||||
// Returns:
|
||||
// - A Response object or an error if parsing fails or the response is invalid
|
||||
pub fn decode_response(data string) !Response {
|
||||
raw := json2.raw_decode(data) or { return error('Failed to decode JSONRPC response ${data}\n${err}') }
|
||||
raw := json2.raw_decode(data) or {
|
||||
return error('Failed to decode JSONRPC response ${data}\n${err}')
|
||||
}
|
||||
raw_map := raw.as_map()
|
||||
|
||||
// Validate that the response contains either result or error, but not both or neither
|
||||
|
||||
Reference in New Issue
Block a user