diff options
author | Christian Grothoff <christian@grothoff.org> | 2021-12-14 16:04:32 +0100 |
---|---|---|
committer | Christian Grothoff <christian@grothoff.org> | 2021-12-14 16:04:40 +0100 |
commit | 1a1fafbd438f3f21a15c990d904e192b045d2391 (patch) | |
tree | cdd32023fd1d7c530caeae0487528d7eaac2aa29 /src/pq/pq_result_helper.c | |
parent | bf54ee30d4727217264f470321cc2f91facf63cc (diff) |
introducing GNUNET_TIME_Timestamp, recoup now with amounts
Diffstat (limited to 'src/pq/pq_result_helper.c')
-rw-r--r-- | src/pq/pq_result_helper.c | 140 |
1 files changed, 0 insertions, 140 deletions
diff --git a/src/pq/pq_result_helper.c b/src/pq/pq_result_helper.c index 8c9f817b0..a6bc9409a 100644 --- a/src/pq/pq_result_helper.c +++ b/src/pq/pq_result_helper.c @@ -357,146 +357,6 @@ TALER_PQ_result_spec_json (const char *name, * * @param cls closure * @param result where to extract data from - * @param row the row to extract data from - * @param fname name (or prefix) of the fields to extract from - * @param[in,out] dst_size where to store size of result, may be NULL - * @param[out] dst where to store the result - * @return - * #GNUNET_YES if all results could be extracted - * #GNUNET_SYSERR if a result was invalid (non-existing field or NULL) - */ -static enum GNUNET_GenericReturnValue -extract_round_time (void *cls, - PGresult *result, - int row, - const char *fname, - size_t *dst_size, - void *dst) -{ - struct GNUNET_TIME_Absolute *udst = dst; - const struct GNUNET_TIME_AbsoluteNBO *res; - struct GNUNET_TIME_Absolute tmp; - int fnum; - - (void) cls; - fnum = PQfnumber (result, - fname); - if (fnum < 0) - { - GNUNET_break (0); - return GNUNET_SYSERR; - } - if (PQgetisnull (result, - row, - fnum)) - return GNUNET_NO; - GNUNET_assert (NULL != dst); - if (sizeof (struct GNUNET_TIME_Absolute) != *dst_size) - { - GNUNET_break (0); - return GNUNET_SYSERR; - } - res = (struct GNUNET_TIME_AbsoluteNBO *) PQgetvalue (result, - row, - fnum); - tmp = GNUNET_TIME_absolute_ntoh (*res); - GNUNET_break (GNUNET_OK == - GNUNET_TIME_round_abs (&tmp)); - *udst = tmp; - return GNUNET_OK; -} - - -struct GNUNET_PQ_ResultSpec -TALER_PQ_result_spec_absolute_time (const char *name, - struct GNUNET_TIME_Absolute *at) -{ - struct GNUNET_PQ_ResultSpec res = { - .conv = &extract_round_time, - .dst = (void *) at, - .dst_size = sizeof (struct GNUNET_TIME_Absolute), - .fname = name - }; - - return res; -} - - -/** - * Extract data from a Postgres database @a result at row @a row. - * - * @param cls closure - * @param result where to extract data from - * @param row the row to extract data from - * @param fname name (or prefix) of the fields to extract from - * @param[in,out] dst_size where to store size of result, may be NULL - * @param[out] dst where to store the result - * @return - * #GNUNET_YES if all results could be extracted - * #GNUNET_SYSERR if a result was invalid (non-existing field or NULL) - */ -static enum GNUNET_GenericReturnValue -extract_round_time_nbo (void *cls, - PGresult *result, - int row, - const char *fname, - size_t *dst_size, - void *dst) -{ - struct GNUNET_TIME_AbsoluteNBO *udst = dst; - const struct GNUNET_TIME_AbsoluteNBO *res; - struct GNUNET_TIME_Absolute tmp; - int fnum; - - (void) cls; - fnum = PQfnumber (result, - fname); - if (fnum < 0) - { - GNUNET_break (0); - return GNUNET_SYSERR; - } - if (PQgetisnull (result, - row, - fnum)) - return GNUNET_NO; - GNUNET_assert (NULL != dst); - if (sizeof (struct GNUNET_TIME_AbsoluteNBO) != *dst_size) - { - GNUNET_break (0); - return GNUNET_SYSERR; - } - res = (struct GNUNET_TIME_AbsoluteNBO *) PQgetvalue (result, - row, - fnum); - tmp = GNUNET_TIME_absolute_ntoh (*res); - GNUNET_break (GNUNET_OK == - GNUNET_TIME_round_abs (&tmp)); - *udst = GNUNET_TIME_absolute_hton (tmp); - return GNUNET_OK; -} - - -struct GNUNET_PQ_ResultSpec -TALER_PQ_result_spec_absolute_time_nbo (const char *name, - struct GNUNET_TIME_AbsoluteNBO *at) -{ - struct GNUNET_PQ_ResultSpec res = { - .conv = &extract_round_time_nbo, - .dst = (void *) at, - .dst_size = sizeof (struct GNUNET_TIME_AbsoluteNBO), - .fname = name - }; - - return res; -} - - -/** - * Extract data from a Postgres database @a result at row @a row. - * - * @param cls closure - * @param result where to extract data from * @param int row to extract data from * @param fname name (or prefix) of the fields to extract from * @param[in,out] dst_size where to store size of result, may be NULL |