-
Notifications
You must be signed in to change notification settings - Fork 12
/
Copy pathjsonRPC.gs
46 lines (43 loc) · 1.04 KB
/
jsonRPC.gs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
function rpcTest(){
try{
rpcHandler("deleteTask",{id:"H2Hmqg4N"})
}catch(e){
console.error(e)
}
}
function rpcHandler(method,params){
switch(method){
case "addTask":
return usecaseAddTask(params)
case "getTask":
return usecaseGetTask(params)
case "getTaskList":
return usecaseGetTaskList(params)
case "updateTask":
return usecaseUpdateTask(params)
case "deleteTask":
return usecaseDeleteTask(params)
}
return createFailureResponse(-32601,"invalid method")
}
function createFailureResponse(code,message){
sContent = JSON.stringify({
error:{
code: code,
message: message,
},
})
var output = ContentService.createTextOutput()
output.setMimeType(ContentService.MimeType.JSON)
output.setContent(sContent)
return output
}
function createSuccessResponse(result){
sContent = JSON.stringify({
result:result,
})
var output = ContentService.createTextOutput()
output.setMimeType(ContentService.MimeType.JSON)
output.setContent(sContent)
return output
}