feat(http-delete-mutex): incorporate db update
This commit is contained in:
parent
7087bd612b
commit
5350c6fbfe
|
@ -247,9 +247,6 @@ int callback_default (const struct _u_request * request, struct _u_response * re
|
|||
*/
|
||||
int callback_get_entity (const struct _u_request * request, struct _u_response * response, void * user_data) {
|
||||
/*declarations*/
|
||||
char *url_params;
|
||||
char *response_body;
|
||||
int r;
|
||||
const char **keys;
|
||||
const char *value;
|
||||
char *line;
|
||||
|
@ -262,12 +259,6 @@ int callback_get_entity (const struct _u_request * request, struct _u_response *
|
|||
json_t *arrayRecords, *arrayFields, *stringField;
|
||||
|
||||
printf("callback_get_entity() Started...\n");
|
||||
url_params = print_map(request->map_url);
|
||||
r=asprintf(
|
||||
&response_body,
|
||||
"parameters from the url are \n%s\n\n",
|
||||
url_params);
|
||||
//printf("callback_get_entity() %d characters generated\n",r);
|
||||
|
||||
if(request->map_url != NULL){
|
||||
keys=u_map_enum_keys(request->map_url);
|
||||
|
@ -285,10 +276,10 @@ int callback_get_entity (const struct _u_request * request, struct _u_response *
|
|||
conn = (PGconn *)user_data;
|
||||
|
||||
/*define prepared statement*/
|
||||
len=snprintf(NULL,0,"SELECT * FROM entities WHERE id=%s;",value);
|
||||
len=snprintf(NULL,0,"SELECT * FROM entities WHERE entity_id=%s;",value);
|
||||
prepStmEntities=malloc((size_t)(len+1));
|
||||
//TODO Release prepStmEntities!
|
||||
snprintf(prepStmEntities,(size_t)(len+1),"SELECT * FROM entities WHERE id=%s;",value);
|
||||
snprintf(prepStmEntities,(size_t)(len+1),"SELECT * FROM entities WHERE entity_id=%s;",value);
|
||||
//printf("callback_get_entity() prepStmEntities: %s\n",prepStmEntities);
|
||||
|
||||
//lock PGconn mutex
|
||||
|
@ -350,8 +341,6 @@ int callback_get_entity (const struct _u_request * request, struct _u_response *
|
|||
ulfius_set_string_body_response(response, 400, "This is the /entity/:id/info route: HTTP GET request error!");
|
||||
}
|
||||
/*clean up remainings*/
|
||||
free(url_params);
|
||||
free(response_body);
|
||||
printf("callback_get_entity() Done.\n");
|
||||
return U_CALLBACK_CONTINUE;
|
||||
}
|
||||
|
@ -509,41 +498,20 @@ int callback_delete_entity (const struct _u_request * request, struct _u_respons
|
|||
value = u_map_get(request->map_url, keys[0]);
|
||||
//printf("callback_delete_entity() key is %s, value is %s\n", keys[0], value);
|
||||
|
||||
//TODO delete from entity
|
||||
const char * queryFromEntity="DELETE FROM relations WHERE from_entity=%s RETURNING *;";
|
||||
|
||||
int delRes=query_db((PGconn *)user_data,&queryFromEntity,&value);
|
||||
//TODO delete entity
|
||||
const char * queryEntities="DELETE FROM entities WHERE entity_id=%s RETURNING *;";
|
||||
int delRes=query_db((PGconn *)user_data,&queryEntities,&value);
|
||||
if(delRes!=0){
|
||||
//TODO Why this casting?
|
||||
(void)(request);
|
||||
(void)(user_data);
|
||||
ulfius_set_string_body_response(response, 500, "This is the /entity/:id/delete route: Dba from_entity error!");
|
||||
ulfius_set_string_body_response(response, 500, "This is the /entity/:id/delete route: Dba entity error!");
|
||||
}else{
|
||||
//TODO delete to entity
|
||||
const char * queryToEntity="DELETE FROM relations WHERE to_entity=%s RETURNING *;";
|
||||
delRes=query_db((PGconn *)user_data,&queryToEntity,&value);
|
||||
if(delRes!=0){
|
||||
//TODO Why this casting?
|
||||
(void)(request);
|
||||
(void)(user_data);
|
||||
ulfius_set_string_body_response(response, 500, "This is the /entity/:id/delete route: Dba to_entity error!");
|
||||
}else{
|
||||
//TODO delete entity
|
||||
const char * queryEntities="DELETE FROM entities WHERE id=%s RETURNING *;";
|
||||
delRes=query_db((PGconn *)user_data,&queryEntities,&value);
|
||||
if(delRes!=0){
|
||||
//TODO Why this casting?
|
||||
(void)(request);
|
||||
(void)(user_data);
|
||||
ulfius_set_string_body_response(response, 500, "This is the /entity/:id/delete route: Dba entity error!");
|
||||
}else{
|
||||
//printf("callback_delete_entity() Juhu! Everything deleted!\n");
|
||||
//TODO Why this casting?
|
||||
(void)(request);
|
||||
(void)(user_data);
|
||||
ulfius_set_string_body_response(response, 200, "Done.\n");
|
||||
}
|
||||
}
|
||||
//printf("callback_delete_entity() Juhu! Everything deleted!\n");
|
||||
//TODO Why this casting?
|
||||
(void)(request);
|
||||
(void)(user_data);
|
||||
ulfius_set_string_body_response(response, 200, "Done.\n");
|
||||
}
|
||||
}
|
||||
}else{
|
||||
|
@ -614,12 +582,12 @@ int callback_update_entity (const struct _u_request * request, struct _u_respons
|
|||
conn = (PGconn *)user_data;
|
||||
/*define prepared statement*/
|
||||
len=snprintf(NULL,0,
|
||||
"UPDATE entities SET name='%s' WHERE id=%s RETURNING *;"
|
||||
"UPDATE entities SET entity_name='%s' WHERE entity_id=%s RETURNING *;"
|
||||
,value,valueUrl);
|
||||
prepStmEntities=malloc((size_t)(len+1));
|
||||
//TODO Release prepStmEntities!
|
||||
snprintf(prepStmEntities,(size_t)(len+1),
|
||||
"UPDATE entities SET name='%s' WHERE id=%s RETURNING *;"
|
||||
"UPDATE entities SET entity_name='%s' WHERE entity_id=%s RETURNING *;"
|
||||
,value,valueUrl);
|
||||
//printf("callback_update_entity() prepStmEntities: %s\n",prepStmEntities);
|
||||
|
||||
|
@ -716,12 +684,12 @@ int callback_create_entity (const struct _u_request * request, struct _u_respons
|
|||
conn = (PGconn *)user_data;
|
||||
/*define prepared statement*/
|
||||
len=snprintf(NULL,0,
|
||||
"INSERT INTO entities (name) VALUES ('%s') RETURNING *;"
|
||||
"INSERT INTO entities (entity_name) VALUES ('%s') RETURNING *;"
|
||||
,value);
|
||||
prepStmEntities=malloc((size_t)(len+1));
|
||||
//TODO Release prepStmEntities!
|
||||
snprintf(prepStmEntities,(size_t)(len+1),
|
||||
"INSERT INTO entities (name) VALUES ('%s') RETURNING *;"
|
||||
"INSERT INTO entities (entity_name) VALUES ('%s') RETURNING *;"
|
||||
,value);
|
||||
//printf("callback_create_entity() prepStmEntities: %s\n",prepStmEntities);
|
||||
|
||||
|
|
Loading…
Reference in New Issue