#include <stdio.h>
#include "mjsonrpc.h"
Go to the source code of this file.
◆ user_example1()
static MJsonNode * user_example1 |
( |
const MJsonNode * |
params | ) |
|
|
static |
Definition at line 18 of file mjsonrpc_user.cxx.
19{
20 if (!params) {
22 doc->D(
"example of user defined RPC method that returns up to 3 results");
24 doc->P(
"optional_arg?",
MJSON_INT,
"optional example integer argument");
25 doc->R(
"string",
MJSON_STRING,
"returns the value of \"arg\" parameter");
26 doc->R(
"integer",
MJSON_INT,
"returns the value of \"optional_arg\" parameter");
28 }
29
30 MJsonNode* error =
NULL;
31
32 std::string arg =
mjsonrpc_get_param(params,
"arg", &error)->GetString();
if (error)
return error;
34
37
39}
MJsonNode * mjsonrpc_make_result(MJsonNode *node)
const MJsonNode * mjsonrpc_get_param(const MJsonNode *params, const char *name, MJsonNode **error)
TH1X EXPRT * h1_book(const char *name, const char *title, int bins, double min, double max)
◆ user_example2()
static MJsonNode * user_example2 |
( |
const MJsonNode * |
params | ) |
|
|
static |
Definition at line 45 of file mjsonrpc_user.cxx.
46{
47 if (!params) {
49 doc->D(
"example of user defined RPC method that returns more than 3 results");
51 doc->P(
"optional_arg?",
MJSON_INT,
"optional example integer argument");
52 doc->R(
"string1",
MJSON_STRING,
"returns the value of \"arg\" parameter");
55 doc->R(
"value1",
MJSON_INT,
"returns the value of \"optional_arg\" parameter");
58 }
59
60 MJsonNode* error =
NULL;
61
62 std::string arg =
mjsonrpc_get_param(params,
"arg", &error)->GetString();
if (error)
return error;
64
67
68 MJsonNode* result = MJsonNode::MakeObject();
69
70 result->AddToObject("string1", MJsonNode::MakeString(arg.c_str()));
71 result->AddToObject("string2", MJsonNode::MakeString("hello"));
72 result->AddToObject("string3", MJsonNode::MakeString("world!"));
73 result->AddToObject(
"value1", MJsonNode::MakeInt(
optional_arg));
74 result->AddToObject("value2", MJsonNode::MakeNumber(3.14));
75
77}
◆ user_example3()
static MJsonNode * user_example3 |
( |
const MJsonNode * |
params | ) |
|
|
static |
Definition at line 83 of file mjsonrpc_user.cxx.
84{
85 if (!params) {
87 doc->D(
"example of user defined RPC method that returns an error");
88 doc->P(
"arg",
MJSON_INT,
"integer value, if zero, throws a JSON-RPC error");
89 doc->R(
"status",
MJSON_INT,
"returns the value of \"arg\" parameter");
91 }
92
93 MJsonNode* error =
NULL;
94
95 int arg =
mjsonrpc_get_param(params,
"arg", &error)->GetInt();
if (error)
return error;
96
98 printf(
"user_example3(%d)\n", arg);
99
100 if (arg)
102 else
104}
MJsonNode * mjsonrpc_make_error(int code, const char *message, const char *data)