rsstats 0.0.1
Redis Enterprise Statistic collector
json.c
Go to the documentation of this file.
1
22#ifdef HAVE_CONFIG_H
23#include "config.h"
24#endif
25
26#include "json.h"
27#include <stdio.h>
28#include <stdlib.h>
29#include <string.h>
30
31char* json2text(cJSON* value_json) {
32 char* retval;
33 if (cJSON_IsNull(value_json))
34 retval = strdup("null");
35 else if (cJSON_IsString(value_json))
36 retval = strdup(value_json->valuestring);
37 else if (cJSON_IsNumber(value_json)) {
38 retval = (char*)malloc(20);
39 if (retval)
40 snprintf(retval,20,"%d",value_json->valueint);
41 } else if (cJSON_IsBool(value_json)) {
42 if (cJSON_IsTrue(value_json))
43 retval = strdup("true");
44 else
45 retval = strdup("false");
46 } else if (cJSON_IsArray(value_json)) {
47 retval = cJSON_PrintUnformatted(value_json);
48 } else if (cJSON_IsObject(value_json)) {
49 retval = cJSON_PrintUnformatted(value_json);
50 } else
51 retval = strdup("Invalid data");
52 return retval;
53}
54
55/* vim: set tw=80: */
char * json2text(cJSON *value_json)
Convert a cJSON object in a C String.
Definition: json.c:31
Wrapper around cJSON library with helpers.
Definition: cJSON.h:103
int valueint
Definition: cJSON.h:116
char * valuestring
Definition: cJSON.h:114