#ifndef ROUTES_H_ #define ROUTES_H_ #include "gebs/gebs.h" #include "mongoose/mongoose.h" typedef struct { enum { ROUTE_RESULT_DYNAMIC, ROUTE_RESULT_STATIC, } type; int status_code; NString_List headers; String_Builder body; } Route_Result; typedef struct { struct mg_mgr *mgr; ulong conn_id; struct mg_str message; } Route_Thread_Data; typedef void (*Route_Handler)(struct mg_http_message *msg, Route_Result *result, void *context_data); typedef struct { char *key; // path Route_Handler value; void *context_data; } Route; #if MY_DEBUG void route_build_id(struct mg_http_message *msg, Route_Result *result, void *context_data); #endif void route_page_not_found(struct mg_http_message *msg, Route_Result *result, void *context_data); void route_home(struct mg_http_message *msg, Route_Result *result, void *context_data); void route_generic_blog(struct mg_http_message *msg, Route_Result *result, void *context_data); void route_blog(struct mg_http_message *msg, Route_Result *result, void *context_data); #endif // ROUTES_H_