#include "xroad_string.h"
#include "xroad_xml.h"
#include <json.h>
#include <stdbool.h>
Go to the source code of this file.
|
#define | JSON_TRUE 1 |
|
#define | JSON_FALSE 0 |
|
#define | __xroad_json_dtor__ __dtor__(xroad_json_destructor) |
|
|
void | xroad_json_destructor (json_object **obj) |
|
json_object * | xroad_json_from_str (xroad_str_t str) |
|
json_object * | xroad_json_get_object (json_object *obj, xroad_str_t path) |
|
bool | xroad_json_has_child (json_object *obj, xroad_str_t path) |
|
bool | xroad_json_get_int32 (json_object *obj, xroad_str_t path, int32_t *val) |
|
int32_t | xroad_json_get_int32_def (json_object *obj, xroad_str_t path, int32_t def_val) |
|
bool | xroad_json_get_int64 (json_object *obj, xroad_str_t path, int64_t *val) |
|
int64_t | xroad_json_get_int64_def (json_object *obj, xroad_str_t path, int64_t def_val) |
|
bool | xroad_json_get_double (json_object *obj, xroad_str_t path, double *val) |
|
double | xroad_json_get_double_def (json_object *obj, xroad_str_t path, double def_val) |
|
bool | xroad_json_get_string (json_object *obj, xroad_str_t path, xroad_str_t *val) |
|
xroad_str_t | xroad_json_get_string_def (json_object *obj, xroad_str_t path, xroad_str_t def_val) |
|
bool | xroad_json_get_bool (json_object *obj, xroad_str_t path, bool *val) |
|
bool | xroad_json_get_bool_def (json_object *obj, xroad_str_t path, bool def_val) |
|
json_object * | xroad_json_from_xml (xroad_xml_tag_t tag) |
|
xroad_str_t | xroad_json_to_str (json_object *obj, int32_t flags) |
|
json_type | xroad_json_get_type (json_object *obj, xroad_str_t path) |
|
◆ xroad_json_from_str()
parse JSON from string
- Parameters
-
- Returns
- json object and NULL in case of error
◆ xroad_json_from_xml()
json_object* xroad_json_from_xml |
( |
xroad_xml_tag_t |
tag | ) |
|
converts xml to json
- Parameters
-
- Returns
- json object
◆ xroad_json_get_bool()
bool xroad_json_get_bool |
( |
json_object * |
obj, |
|
|
xroad_str_t |
path, |
|
|
bool * |
val |
|
) |
| |
get bool data
- Parameters
-
[in] | obj | - parent object |
[in] | path | - search path |
[out] | val | - found value |
- Returns
- true value found and it is a boolean
◆ xroad_json_get_bool_def()
bool xroad_json_get_bool_def |
( |
json_object * |
obj, |
|
|
xroad_str_t |
path, |
|
|
bool |
def_val |
|
) |
| |
get bool data with default
- Parameters
-
[in] | obj | - parent object |
[in] | path | - search path |
[out] | def_val | - default value |
- Returns
- true value found and it is a boolean
◆ xroad_json_get_double()
bool xroad_json_get_double |
( |
json_object * |
obj, |
|
|
xroad_str_t |
path, |
|
|
double * |
val |
|
) |
| |
get double data
- Parameters
-
[in] | obj | - parent object |
[in] | path | - search path |
[out] | val | - found value |
- Returns
- true value found and it is an double
◆ xroad_json_get_double_def()
double xroad_json_get_double_def |
( |
json_object * |
obj, |
|
|
xroad_str_t |
path, |
|
|
double |
def_val |
|
) |
| |
get double data with defauult
- Parameters
-
[in] | obj | - parent object |
[in] | path | - search path |
[out] | def_val | - default value |
- Returns
- value(or default)
◆ xroad_json_get_int32()
bool xroad_json_get_int32 |
( |
json_object * |
obj, |
|
|
xroad_str_t |
path, |
|
|
int32_t * |
val |
|
) |
| |
get int32 data
- Parameters
-
[in] | obj | - parent object |
[in] | path | - search path |
[out] | val | - found value |
- Returns
- true value found and it is an integer
◆ xroad_json_get_int32_def()
int32_t xroad_json_get_int32_def |
( |
json_object * |
obj, |
|
|
xroad_str_t |
path, |
|
|
int32_t |
def_val |
|
) |
| |
get int32 data with default
- Parameters
-
[in] | obj | - parent object |
[in] | path | - search path |
[out] | def_val | - default value |
- Returns
- value(or default)
◆ xroad_json_get_int64()
bool xroad_json_get_int64 |
( |
json_object * |
obj, |
|
|
xroad_str_t |
path, |
|
|
int64_t * |
val |
|
) |
| |
get int64 data
- Parameters
-
[in] | obj | - parent object |
[in] | path | - search path |
[out] | val | - found value |
- Returns
- true value found and it is an integer
◆ xroad_json_get_int64_def()
int64_t xroad_json_get_int64_def |
( |
json_object * |
obj, |
|
|
xroad_str_t |
path, |
|
|
int64_t |
def_val |
|
) |
| |
get int64 data with default
- Parameters
-
[in] | obj | - parent object |
[in] | path | - search path |
[out] | def_val | - default value |
- Returns
- value(or default)
◆ xroad_json_get_object()
json_object* xroad_json_get_object |
( |
json_object * |
obj, |
|
|
xroad_str_t |
path |
|
) |
| |
get json object by path
- Parameters
-
[in] | obj | - parent JSON object |
[in] | path | - search path (e.g. "test/data/child[0]/name") |
- Returns
- JSON object is any, NULL - wrong path
◆ xroad_json_get_string()
get string data
- Parameters
-
[in] | obj | - parent object |
[in] | path | - search path |
[out] | val | - found value |
- Returns
- true value found and it is a string
◆ xroad_json_get_string_def()
get string data with default
- Parameters
-
[in] | obj | - parent object |
[in] | path | - search path |
[out] | def_val | - default value |
- Returns
- true value found and it is a string
◆ xroad_json_get_type()
json_type xroad_json_get_type |
( |
json_object * |
obj, |
|
|
xroad_str_t |
path |
|
) |
| |
get json object type
- Parameters
-
[in] | obj | - parent json object |
[in] | path | - path to json object |
- Returns
- json object type
◆ xroad_json_has_child()
bool xroad_json_has_child |
( |
json_object * |
obj, |
|
|
xroad_str_t |
path |
|
) |
| |
check for child object
- Parameters
-
[in] | obj | - parent JSON object |
[in] | path | - search path (e.g. "test/data/child[0]/name") |
- Returns
- true - child exists, else failed
◆ xroad_json_to_str()
xroad_str_t xroad_json_to_str |
( |
json_object * |
obj, |
|
|
int32_t |
flags |
|
) |
| |
serialize json to string
- Parameters
-
[in] | obj | - parent object |
[in] | flags | - json flags (e.g. JSON_C_TO_STRING_PRETTY, etc) |
- Returns
- string representation of json structure