Skip to content
This repository was archived by the owner on Dec 26, 2022. It is now read-only.

Commit 6c2c92f

Browse files
authored
Merge pull request #93 from jkrvivian/status_code
feat: Introduce status code
2 parents aa8734e + 35c4866 commit 6c2c92f

File tree

16 files changed

+341
-222
lines changed

16 files changed

+341
-222
lines changed

accelerator/BUILD

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ cc_library(
1818
visibility = ["//visibility:public"],
1919
deps = [
2020
":common_core",
21+
":ta_errors",
2122
"//serializer",
2223
"@entangled//cclient:api",
2324
],
@@ -30,6 +31,7 @@ cc_library(
3031
visibility = ["//visibility:public"],
3132
deps = [
3233
":ta_config",
34+
":ta_errors",
3335
"//request",
3436
"//response",
3537
"//utils:cache",

accelerator/apis.c

Lines changed: 30 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
11
#include "apis.h"
22

3-
int api_get_tips(const iota_client_service_t* const service,
4-
char** json_result) {
5-
int ret = 0;
3+
status_t api_get_tips(const iota_client_service_t* const service,
4+
char** json_result) {
5+
status_t ret = SC_OK;
66
ta_get_tips_res_t* res = ta_get_tips_res_new();
77
if (res == NULL) {
8+
ret = SC_TA_OOM;
89
goto done;
910
}
1011

@@ -20,11 +21,12 @@ int api_get_tips(const iota_client_service_t* const service,
2021
return ret;
2122
}
2223

23-
int api_get_tips_pair(const iota_client_service_t* const service,
24-
char** json_result) {
25-
int ret = 0;
24+
status_t api_get_tips_pair(const iota_client_service_t* const service,
25+
char** json_result) {
26+
status_t ret = SC_OK;
2627
ta_get_tips_res_t* res = ta_get_tips_res_new();
2728
if (res == NULL) {
29+
ret = SC_TA_OOM;
2830
goto done;
2931
}
3032

@@ -40,11 +42,12 @@ int api_get_tips_pair(const iota_client_service_t* const service,
4042
return ret;
4143
}
4244

43-
int api_generate_address(const iota_client_service_t* const service,
44-
char** json_result) {
45-
int ret = 0;
45+
status_t api_generate_address(const iota_client_service_t* const service,
46+
char** json_result) {
47+
status_t ret = SC_OK;
4648
ta_generate_address_res_t* res = ta_generate_address_res_new();
4749
if (res == NULL) {
50+
ret = SC_TA_OOM;
4851
goto done;
4952
}
5053

@@ -60,11 +63,12 @@ int api_generate_address(const iota_client_service_t* const service,
6063
return ret;
6164
}
6265

63-
int api_get_transaction_object(const iota_client_service_t* const service,
64-
const char* const obj, char** json_result) {
65-
int ret = 0;
66+
status_t api_get_transaction_object(const iota_client_service_t* const service,
67+
const char* const obj, char** json_result) {
68+
status_t ret = SC_OK;
6669
ta_get_transaction_object_res_t* res = ta_get_transaction_object_res_new();
6770
if (res == NULL) {
71+
ret = SC_TA_OOM;
6872
goto done;
6973
}
7074

@@ -80,11 +84,13 @@ int api_get_transaction_object(const iota_client_service_t* const service,
8084
return ret;
8185
}
8286

83-
int api_find_transactions_by_tag(const iota_client_service_t* const service,
84-
const char* const obj, char** json_result) {
85-
int ret = 0;
87+
status_t api_find_transactions_by_tag(
88+
const iota_client_service_t* const service, const char* const obj,
89+
char** json_result) {
90+
status_t ret = SC_OK;
8691
ta_find_transactions_res_t* res = ta_find_transactions_res_new();
8792
if (res == NULL) {
93+
ret = SC_TA_OOM;
8894
goto done;
8995
}
9096

@@ -100,12 +106,13 @@ int api_find_transactions_by_tag(const iota_client_service_t* const service,
100106
return ret;
101107
}
102108

103-
int api_find_transactions_obj_by_tag(const iota_client_service_t* const service,
104-
const char* const obj,
105-
char** json_result) {
106-
int ret = 0;
109+
status_t api_find_transactions_obj_by_tag(
110+
const iota_client_service_t* const service, const char* const obj,
111+
char** json_result) {
112+
status_t ret = SC_OK;
107113
ta_find_transactions_obj_res_t* res = ta_find_transactions_obj_res_new();
108114
if (res == NULL) {
115+
ret = SC_TA_OOM;
109116
goto done;
110117
}
111118

@@ -121,16 +128,17 @@ int api_find_transactions_obj_by_tag(const iota_client_service_t* const service,
121128
return ret;
122129
}
123130

124-
int api_send_transfer(const iota_client_service_t* const service,
125-
const char* const obj, char** json_result) {
126-
int ret = 0;
131+
status_t api_send_transfer(const iota_client_service_t* const service,
132+
const char* const obj, char** json_result) {
133+
status_t ret = SC_OK;
127134
char hash_trytes[NUM_TRYTES_HASH + 1];
128135
ta_send_transfer_req_t* req = ta_send_transfer_req_new();
129136
ta_send_transfer_res_t* res = ta_send_transfer_res_new();
130137
ta_get_transaction_object_res_t* txn_obj_res =
131138
ta_get_transaction_object_res_new();
132139

133140
if (req == NULL || res == NULL || txn_obj_res == NULL) {
141+
ret = SC_TA_OOM;
134142
goto done;
135143
}
136144

accelerator/apis.h

Lines changed: 24 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
#define ACCELERATOR_APIS_H_
33

44
#include "accelerator/common_core.h"
5+
#include "accelerator/errors.h"
56
#include "cclient/types/types.h"
67
#include "serializer/serializer.h"
78

@@ -28,11 +29,11 @@ extern "C" {
2829
* @param[out] json_result Result containing an unused address in json format
2930
*
3031
* @return
31-
* - 0 on success
32+
* - SC_OK on success
3233
* - non-zero on error
3334
*/
34-
int api_generate_address(const iota_client_service_t* const service,
35-
char** json_result);
35+
status_t api_generate_address(const iota_client_service_t* const service,
36+
char** json_result);
3637

3738
/**
3839
* @brief Get trunk and branch transactions
@@ -44,11 +45,11 @@ int api_generate_address(const iota_client_service_t* const service,
4445
* @param[out] json_result Result containing a tips pair in json format
4546
*
4647
* @return
47-
* - 0 on success
48+
* - SC_OK on success
4849
* - non-zero on error
4950
*/
50-
int api_get_tips_pair(const iota_client_service_t* const service,
51-
char** json_result);
51+
status_t api_get_tips_pair(const iota_client_service_t* const service,
52+
char** json_result);
5253

5354
/**
5455
* @brief Get list of all tips from IRI node.
@@ -60,11 +61,11 @@ int api_get_tips_pair(const iota_client_service_t* const service,
6061
* @param[out] json_result Result containing list of all tips in json format
6162
*
6263
* @return
63-
* - 0 on success
64+
* - SC_OK on success
6465
* - non-zero on error
6566
*/
66-
int api_get_tips(const iota_client_service_t* const service,
67-
char** json_result);
67+
status_t api_get_tips(const iota_client_service_t* const service,
68+
char** json_result);
6869

6970
/**
7071
* @brief Send transfer to tangle.
@@ -78,11 +79,11 @@ int api_get_tips(const iota_client_service_t* const service,
7879
* @param[out] json_result Result containing transaction objects in json format
7980
*
8081
* @return
81-
* - 0 on success
82+
* - SC_OK on success
8283
* - non-zero on error
8384
*/
84-
int api_send_transfer(const iota_client_service_t* const service,
85-
const char* const obj, char** json_result);
85+
status_t api_send_transfer(const iota_client_service_t* const service,
86+
const char* const obj, char** json_result);
8687

8788
/**
8889
* @brief Return transaction object with given transaction hash.
@@ -95,11 +96,11 @@ int api_send_transfer(const iota_client_service_t* const service,
9596
* @param[out] json_result Result containing transaction objects in json format
9697
*
9798
* @return
98-
* - 0 on success
99+
* - SC_OK on success
99100
* - non-zero on error
100101
*/
101-
int api_get_transaction_object(const iota_client_service_t* const service,
102-
const char* const obj, char** json_result);
102+
status_t api_get_transaction_object(const iota_client_service_t* const service,
103+
const char* const obj, char** json_result);
103104

104105
/**
105106
* @brief Return list of transaction hash with given tag hash.
@@ -113,11 +114,12 @@ int api_get_transaction_object(const iota_client_service_t* const service,
113114
* format
114115
*
115116
* @return
116-
* - 0 on success
117+
* - SC_OK on success
117118
* - non-zero on error
118119
*/
119-
int api_find_transactions_by_tag(const iota_client_service_t* const service,
120-
const char* const obj, char** json_result);
120+
status_t api_find_transactions_by_tag(
121+
const iota_client_service_t* const service, const char* const obj,
122+
char** json_result);
121123

122124
/**
123125
* @brief Return list of transaction object with given tag hash.
@@ -131,11 +133,12 @@ int api_find_transactions_by_tag(const iota_client_service_t* const service,
131133
* format
132134
*
133135
* @return
134-
* - 0 on success
136+
* - SC_OK on success
135137
* - non-zero on error
136138
*/
137-
int api_find_transactions_obj_by_tag(const iota_client_service_t* const service,
138-
const char* const obj, char** json_result);
139+
status_t api_find_transactions_obj_by_tag(
140+
const iota_client_service_t* const service, const char* const obj,
141+
char** json_result);
139142

140143
#ifdef __cplusplus
141144
}

0 commit comments

Comments
 (0)