55#include " accelerator/config.h"
66#include " accelerator/errors.h"
77#include " cJSON.h"
8+ #include " utils/logger_helper.h"
9+
10+ #define MAIN_LOGGER_ID " main"
11+
12+ static ta_core_t ta_core;
13+ static logger_id_t logger_id;
814
915void set_method_header (served::response& res, http_method_t method) {
10- res.set_header (" Server" , TA_VERSION );
16+ res.set_header (" Server" , ta_core. info . version );
1117 res.set_header (" Access-Control-Allow-Origin" , " *" );
1218
1319 switch (method) {
@@ -48,16 +54,12 @@ int main(int, char const**) {
4854 served::multiplexer mux;
4955 mux.use_after (served::plugin::access_log);
5056
51- iota_client_service_t service;
52- service.http .path = " /" ;
53- service.http .content_type = " application/json" ;
54- service.http .accept = " application/json" ;
55- service.http .host = IRI_HOST;
56- service.http .port = IRI_PORT;
57- service.http .api_version = 1 ;
58- service.serializer_type = SR_JSON;
59- iota_client_core_init (&service);
60- iota_client_extended_init ();
57+ if (logger_helper_init () != RC_OK) {
58+ return EXIT_FAILURE;
59+ }
60+ logger_id = logger_helper_enable (MAIN_LOGGER_ID, LOGGER_DEBUG, true );
61+
62+ ta_config_init (&ta_core.info , &ta_core.config , &ta_core.service );
6163
6264 mux.handle (" /mam/{bundle:[A-Z9]{81}}" )
6365 .method (served::method::OPTIONS,
@@ -68,8 +70,8 @@ int main(int, char const**) {
6870 status_t ret = SC_OK;
6971 char * json_result = NULL ;
7072
71- ret = api_receive_mam_message (&service, req. params [ " bundle " ]. c_str (),
72- &json_result);
73+ ret = api_receive_mam_message (
74+ &ta_core. service , req. params [ " bundle " ]. c_str (), &json_result);
7375 ret = set_response_content (ret, &json_result);
7476
7577 set_method_header (res, HTTP_METHOD_GET);
@@ -93,8 +95,8 @@ int main(int, char const**) {
9395 status_t ret = SC_OK;
9496 char * json_result;
9597
96- ret = api_find_transactions_by_tag (&service, req. params [ " tag " ]. c_str (),
97- &json_result);
98+ ret = api_find_transactions_by_tag (
99+ &ta_core. service , req. params [ " tag " ]. c_str (), &json_result);
98100 ret = set_response_content (ret, &json_result);
99101 set_method_header (res, HTTP_METHOD_GET);
100102 res.set_status (ret);
@@ -117,8 +119,8 @@ int main(int, char const**) {
117119 status_t ret = SC_OK;
118120 char * json_result;
119121
120- ret = api_get_transaction_object (&service, req. params [ " tx " ]. c_str (),
121- &json_result);
122+ ret = api_get_transaction_object (
123+ &ta_core. service , req. params [ " tx " ]. c_str (), &json_result);
122124 ret = set_response_content (ret, &json_result);
123125 set_method_header (res, HTTP_METHOD_GET);
124126 res.set_status (ret);
@@ -142,7 +144,7 @@ int main(int, char const**) {
142144 char * json_result;
143145
144146 ret = api_find_transactions_obj_by_tag (
145- &service, req.params [" tag" ].c_str (), &json_result);
147+ &ta_core. service , req.params [" tag" ].c_str (), &json_result);
146148 ret = set_response_content (ret, &json_result);
147149 set_method_header (res, HTTP_METHOD_GET);
148150 res.set_status (ret);
@@ -163,7 +165,7 @@ int main(int, char const**) {
163165 status_t ret = SC_OK;
164166 char * json_result;
165167
166- ret = api_get_tips_pair (&service, &json_result);
168+ ret = api_get_tips_pair (&ta_core. service , &json_result);
167169 ret = set_response_content (ret, &json_result);
168170 set_method_header (res, HTTP_METHOD_GET);
169171 res.set_status (ret);
@@ -184,7 +186,7 @@ int main(int, char const**) {
184186 status_t ret = SC_OK;
185187 char * json_result;
186188
187- ret = api_get_tips (&service, &json_result);
189+ ret = api_get_tips (&ta_core. service , &json_result);
188190 ret = set_response_content (ret, &json_result);
189191 set_method_header (res, HTTP_METHOD_GET);
190192 res.set_status (ret);
@@ -205,7 +207,7 @@ int main(int, char const**) {
205207 status_t ret = SC_OK;
206208 char * json_result;
207209
208- ret = api_generate_address (&service, &json_result);
210+ ret = api_generate_address (&ta_core. service , &json_result);
209211 ret = set_response_content (ret, &json_result);
210212 set_method_header (res, HTTP_METHOD_GET);
211213 res.set_status (ret);
@@ -236,7 +238,8 @@ int main(int, char const**) {
236238 res.set_status (SC_HTTP_BAD_REQUEST);
237239 cJSON_Delete (json_obj);
238240 } else {
239- ret = api_send_transfer (&service, req.body ().c_str (), &json_result);
241+ ret = api_send_transfer (&ta_core.service , req.body ().c_str (),
242+ &json_result);
240243 ret = set_response_content (ret, &json_result);
241244 res.set_status (ret);
242245 }
@@ -269,10 +272,13 @@ int main(int, char const**) {
269272 });
270273
271274 std::cout << " Starting..." << std::endl;
272- served::net::server server (TA_HOST, TA_PORT , mux);
273- server.run (TA_THREAD_COUNT );
275+ served::net::server server (ta_core. info . host , ta_core. info . port , mux);
276+ server.run (ta_core. info . thread_count );
274277
275- iota_client_extended_destroy ();
276- iota_client_core_destroy (&service);
278+ ta_config_destroy (&ta_core.service );
279+ logger_helper_release (logger_id);
280+ if (logger_helper_destroy () != RC_OK) {
281+ return EXIT_FAILURE;
282+ }
277283 return 0 ;
278284}
0 commit comments