add: more debugging
add: more options for testing
This commit is contained in:
parent
0efbd2a22f
commit
e84d54f562
23 changed files with 130 additions and 63 deletions
src/models
|
@ -187,13 +187,17 @@ controller_free_list(controller_t **controllers)
|
|||
free(controllers);
|
||||
}
|
||||
|
||||
char*
|
||||
cJSON*
|
||||
controller_to_json(controller_t *controller)
|
||||
{
|
||||
cJSON *json;
|
||||
|
||||
char *cached = cache_get_json_controller(controller->id);
|
||||
if(cached)
|
||||
{
|
||||
return cached;
|
||||
json = cJSON_CreateRaw(cached);
|
||||
free(cached);
|
||||
return json;
|
||||
}
|
||||
|
||||
char uuid_str[UUID_STR_LEN];
|
||||
|
@ -201,7 +205,7 @@ controller_to_json(controller_t *controller)
|
|||
|
||||
LOGGER_DEBUG("JSONifying controller %s\n", uuid_str);
|
||||
|
||||
cJSON *json = cJSON_CreateObject();
|
||||
json = cJSON_CreateObject();
|
||||
|
||||
cJSON *json_name = cJSON_CreateString(controller->name);
|
||||
if(json_name == NULL)
|
||||
|
@ -255,17 +259,19 @@ controller_to_json(controller_t *controller)
|
|||
cJSON *json_relays = cJSON_CreateArray();
|
||||
for(int i = 0; relays[i] != NULL; ++i)
|
||||
{
|
||||
cJSON *json_relay = cJSON_CreateRaw(relay_to_json(relays[i]));
|
||||
cJSON *json_relay = relay_to_json(relays[i]);
|
||||
cJSON_AddItemToArray(json_relays, json_relay);
|
||||
}
|
||||
cJSON_AddItemToObject(json, "relays", json_relays);
|
||||
relay_free_list(relays);
|
||||
|
||||
char *result = cJSON_Print(json);
|
||||
char *json_str = cJSON_Print(json);
|
||||
cache_put_json_controller(controller->id, json_str);
|
||||
cJSON_Delete(json);
|
||||
|
||||
cache_put_json_controller(controller->id, result);
|
||||
return result;
|
||||
json = cJSON_CreateRaw(json_str);
|
||||
free(json_str);
|
||||
return json;
|
||||
}
|
||||
|
||||
controller_t*
|
||||
|
|
|
@ -196,13 +196,17 @@ relay_free_list(relay_t **relays)
|
|||
free(relays);
|
||||
}
|
||||
|
||||
char*
|
||||
cJSON*
|
||||
relay_to_json(relay_t *relay)
|
||||
{
|
||||
cJSON *json;
|
||||
|
||||
char *cached = cache_get_json_relay(relay->id);
|
||||
if(cached)
|
||||
{
|
||||
return cached;
|
||||
json = cJSON_CreateRaw(cached);
|
||||
free(cached);
|
||||
return json;
|
||||
}
|
||||
|
||||
controller_t *controller = controller_get_by_id(relay->controller_id);
|
||||
|
@ -218,7 +222,7 @@ relay_to_json(relay_t *relay)
|
|||
|
||||
relay_reload_active_schedule(relay);
|
||||
|
||||
cJSON *json = cJSON_CreateObject();
|
||||
json = cJSON_CreateObject();
|
||||
|
||||
cJSON *json_number = cJSON_CreateNumber(relay->number);
|
||||
if(json_number == NULL)
|
||||
|
@ -264,13 +268,13 @@ relay_to_json(relay_t *relay)
|
|||
}
|
||||
cJSON_AddItemToObject(json, "is_on", json_is_on);
|
||||
|
||||
cJSON *json_active_schedule = cJSON_CreateRaw(schedule_to_json(relay->active_schedule));
|
||||
cJSON *json_active_schedule = schedule_to_json(relay->active_schedule);
|
||||
cJSON_AddItemToObject(json, "active_schedule", json_active_schedule);
|
||||
|
||||
cJSON *json_schedules = cJSON_CreateArray();
|
||||
for(int i = 0; i < 7; ++i)
|
||||
{
|
||||
cJSON *json_schedule = cJSON_CreateRaw(schedule_to_json(relay->schedules[i]));
|
||||
cJSON *json_schedule = schedule_to_json(relay->schedules[i]);
|
||||
cJSON_AddItemToArray(json_schedules, json_schedule);
|
||||
}
|
||||
cJSON_AddItemToObject(json, "schedules", json_schedules);
|
||||
|
@ -301,27 +305,27 @@ relay_to_json(relay_t *relay)
|
|||
}
|
||||
cJSON_AddItemToObject(json, "tags", json_tags);
|
||||
|
||||
char *result = cJSON_Print(json);
|
||||
char *json_str = cJSON_Print(json);
|
||||
cache_put_json_relay(relay->id, json_str);
|
||||
cJSON_Delete(json);
|
||||
|
||||
cache_put_json_relay(relay->id, result);
|
||||
return result;
|
||||
json = cJSON_CreateRaw(json_str);
|
||||
free(json_str);
|
||||
return json;
|
||||
}
|
||||
|
||||
char*
|
||||
cJSON*
|
||||
relay_list_to_json(relay_t **relays)
|
||||
{
|
||||
cJSON *json = cJSON_CreateArray();
|
||||
|
||||
for(int i = 0; relays[i] != NULL; ++i)
|
||||
{
|
||||
cJSON *json_relay = cJSON_CreateRaw(relay_to_json(relays[i]));
|
||||
cJSON *json_relay = relay_to_json(relays[i]);
|
||||
cJSON_AddItemToArray(json, json_relay);
|
||||
}
|
||||
|
||||
char *result = cJSON_Print(json);
|
||||
cJSON_Delete(json);
|
||||
return result;
|
||||
return json;
|
||||
}
|
||||
|
||||
relay_t*
|
||||
|
|
|
@ -219,13 +219,17 @@ schedule_periods_to_blob(schedule_t *schedule)
|
|||
return blob;
|
||||
}
|
||||
|
||||
char*
|
||||
cJSON*
|
||||
schedule_to_json(schedule_t *schedule)
|
||||
{
|
||||
cJSON *json;
|
||||
|
||||
char *cached = cache_get_json_schedule(schedule->id);
|
||||
if(cached)
|
||||
{
|
||||
return cached;
|
||||
json = cJSON_CreateRaw(cached);
|
||||
free(cached);
|
||||
return json;
|
||||
}
|
||||
|
||||
char uuid_str[UUID_STR_LEN];
|
||||
|
@ -233,7 +237,7 @@ schedule_to_json(schedule_t *schedule)
|
|||
|
||||
LOGGER_DEBUG("JSONifying schedule %s\n", uuid_str);
|
||||
|
||||
cJSON *json = cJSON_CreateObject();
|
||||
json = cJSON_CreateObject();
|
||||
|
||||
cJSON *json_name = cJSON_CreateString(schedule->name);
|
||||
if(json_name == NULL)
|
||||
|
@ -319,11 +323,13 @@ schedule_to_json(schedule_t *schedule)
|
|||
}
|
||||
cJSON_AddItemToObject(json, "tags", json_tags);
|
||||
|
||||
char *result = cJSON_Print(json);
|
||||
char *json_str = cJSON_Print(json);
|
||||
cache_put_json_schedule(schedule->id, json_str);
|
||||
cJSON_Delete(json);
|
||||
|
||||
cache_put_json_schedule(schedule->id, result);
|
||||
return result;
|
||||
json = cJSON_CreateRaw(json_str);
|
||||
free(json_str);
|
||||
return json;
|
||||
}
|
||||
|
||||
schedule_t*
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue