diff options
author | Christian Grothoff <christian@grothoff.org> | 2015-03-27 19:58:40 +0100 |
---|---|---|
committer | Christian Grothoff <christian@grothoff.org> | 2015-03-27 19:58:40 +0100 |
commit | eae1896a4bfc02b5d7586f81bbedfea69b29acc8 (patch) | |
tree | c3927c09435b74fb547a37fe0c75d01dd7b7f234 /src/pq | |
parent | 7730a083494c0d49705f87b32fc85dfa6ed6809a (diff) |
major rename-fest for more constent symbol names
Diffstat (limited to 'src/pq')
-rw-r--r-- | src/pq/Makefile.am | 5 | ||||
-rw-r--r-- | src/pq/db_pq.c | 22 | ||||
-rw-r--r-- | src/pq/db_pq.h | 189 |
3 files changed, 12 insertions, 204 deletions
diff --git a/src/pq/Makefile.am b/src/pq/Makefile.am index c94029bc6..db9d4aa23 100644 --- a/src/pq/Makefile.am +++ b/src/pq/Makefile.am @@ -3,14 +3,11 @@ AM_CPPFLAGS = -I$(top_srcdir)/src/include $(LIBGCRYPT_CFLAGS) $(POSTGRESQL_CPPFL talerincludedir = $(includedir)/taler -talerinclude_HEADERS = \ - db_pq.h - lib_LTLIBRARIES = \ libtalerpq.la libtalerpq_la_SOURCES = \ - db_pq.c db_pq.h + db_pq.c libtalerpq_la_LIBADD = \ -lgnunetutil \ diff --git a/src/pq/db_pq.c b/src/pq/db_pq.c index 3594fcbf2..48ffb6c88 100644 --- a/src/pq/db_pq.c +++ b/src/pq/db_pq.c @@ -14,7 +14,7 @@ TALER; see the file COPYING. If not, If not, see <http://www.gnu.org/licenses/> */ /** - * @file util/db_pq.c + * @file pq/db_pq.c * @brief helper functions for libpq (PostGres) interactions * @author Sree Harsha Totakura <sreeharsha@totakura.in> * @author Florian Dold @@ -22,23 +22,23 @@ */ #include "platform.h" #include <gnunet/gnunet_util_lib.h> -#include "db_pq.h" +#include "taler_pq_lib.h" /** * Execute a prepared statement. */ PGresult * -TALER_DB_exec_prepared (PGconn *db_conn, +TALER_PQ_exec_prepared (PGconn *db_conn, const char *name, - const struct TALER_DB_QueryParam *params) + const struct TALER_PQ_QueryParam *params) { unsigned len; unsigned i; /* count the number of parameters */ { - const struct TALER_DB_QueryParam *x; + const struct TALER_PQ_QueryParam *x; for (len = 0, x = params; x->more; len++, x++); @@ -76,8 +76,8 @@ TALER_DB_exec_prepared (PGconn *db_conn, * #GNUNET_SYSERR if a result was invalid (non-existing field) */ int -TALER_DB_extract_result (PGresult *result, - struct TALER_DB_ResultSpec *rs, +TALER_PQ_extract_result (PGresult *result, + struct TALER_PQ_ResultSpec *rs, int row) { int had_null = GNUNET_NO; @@ -141,7 +141,7 @@ TALER_DB_extract_result (PGresult *result, int -TALER_DB_field_isnull (PGresult *result, +TALER_PQ_field_isnull (PGresult *result, int row, const char *fname) { @@ -156,7 +156,7 @@ TALER_DB_field_isnull (PGresult *result, int -TALER_DB_extract_amount_nbo (PGresult *result, +TALER_PQ_extract_amount_nbo (PGresult *result, int row, const char *val_name, const char *frac_name, @@ -196,7 +196,7 @@ TALER_DB_extract_amount_nbo (PGresult *result, int -TALER_DB_extract_amount (PGresult *result, +TALER_PQ_extract_amount (PGresult *result, int row, const char *val_name, const char *frac_name, @@ -206,7 +206,7 @@ TALER_DB_extract_amount (PGresult *result, struct TALER_AmountNBO amount_nbo; (void) - TALER_DB_extract_amount_nbo (result, + TALER_PQ_extract_amount_nbo (result, row, val_name, frac_name, diff --git a/src/pq/db_pq.h b/src/pq/db_pq.h deleted file mode 100644 index 720dad5c5..000000000 --- a/src/pq/db_pq.h +++ /dev/null @@ -1,189 +0,0 @@ -/* - This file is part of TALER - Copyright (C) 2014 Christian Grothoff (and other contributing authors) - - TALER is free software; you can redistribute it and/or modify it under the - terms of the GNU General Public License as published by the Free Software - Foundation; either version 3, or (at your option) any later version. - - TALER is distributed in the hope that it will be useful, but WITHOUT ANY - WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR - A PARTICULAR PURPOSE. See the GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along with - TALER; see the file COPYING. If not, If not, see <http://www.gnu.org/licenses/> -*/ -/** - * @file pq/db_pq.h - * @brief helper functions for DB interactions - * @author Sree Harsha Totakura <sreeharsha@totakura.in> - * @author Florian Dold - * @author Christian Grothoff - */ - -#ifndef TALER_DB_LIB_H_ -#define TALER_DB_LIB_H_ - -#include <libpq-fe.h> -#include "taler_util.h" - -/** - * Description of a DB query parameter. - */ -struct TALER_DB_QueryParam -{ - /** - * Data or NULL - */ - const void *data; - - /** - * Size of @e data - */ - size_t size; - - /** - * Non-null if this is not the last parameter. - * This allows for null as sentinal value. - */ - int more; -}; - -/** - * End of query parameter specification. - */ -#define TALER_DB_QUERY_PARAM_END { NULL, 0, 0 } - -/** - * Generate fixed-size query parameter with size given explicitly. - * - * @param x pointer to the query parameter to pass - * @param s number of bytes of @a x to use for the query - */ -#define TALER_DB_QUERY_PARAM_PTR_SIZED(x, s) { (x), (s), 1 } - -/** - * Generate fixed-size query parameter with size determined - * by variable type. - * - * @param x pointer to the query parameter to pass. - */ -#define TALER_DB_QUERY_PARAM_PTR(x) TALER_DB_QUERY_PARAM_PTR_SIZED(x, sizeof (*(x))) - - -/** - * Description of a DB result cell. - */ -struct TALER_DB_ResultSpec -{ - /** - * Destination for the data. - */ - void *dst; - - /** - * Allowed size for the data, 0 for variable-size - * (in this case, the type of @e dst is a `void **` - * and we need to allocate a buffer of the right size). - */ - size_t dst_size; - - /** - * Field name of the desired result. - */ - char *fname; - - /** - * Actual size of the result. - */ - size_t *result_size; - -}; - - -/** - * End of result parameter specification. - */ -#define TALER_DB_RESULT_SPEC_END { NULL, 0, NULL, NULL } - -/** - * We expect a fixed-size result, with size given explicitly - * - * @param name name of the field in the table - * @param dst point to where to store the result - * @param s number of bytes we should use in @a dst - */ -#define TALER_DB_RESULT_SPEC_SIZED(name, dst, s) { (void *) (dst), (s), (name), NULL } - -/** - * We expect a fixed-size result, with size determined by the type of `* dst` - * - * @param name name of the field in the table - * @param dst point to where to store the result, type fits expected result size - */ -#define TALER_DB_RESULT_SPEC(name, dst) TALER_DB_RESULT_SPEC_SIZED(name, dst, sizeof (*(dst))) - -/** - * Variable-size result expected. - * - * @param name name of the field in the table - * @param dst where to store the result (of type void **), to be allocated - * @param sptr pointer to a `size_t` for where to store the size of @a dst - */ -#define TALER_DB_RESULT_SPEC_VAR(name, dst, sptr) { (void *) (dst), 0, (name), sptr } - - -/** - * Execute a prepared statement. - */ -PGresult * -TALER_DB_exec_prepared (PGconn *db_conn, - const char *name, - const struct TALER_DB_QueryParam *params); - - -/** - * Extract results from a query result according to the given specification. - * If colums are NULL, the destination is not modified, and GNUNET_NO - * is returned. - * - * @return - * #GNUNET_YES if all results could be extracted - * #GNUNET_NO if at least one result was NULL - * #GNUNET_SYSERR if a result was invalid (non-existing field) - */ -int -TALER_DB_extract_result (PGresult *result, - struct TALER_DB_ResultSpec *rs, - int row); - - -int -TALER_DB_field_isnull (PGresult *result, - int row, - const char *fname); - - -int -TALER_DB_extract_amount_nbo (PGresult *result, - int row, - const char *val_name, - const char *frac_name, - const char *curr_name, - struct TALER_AmountNBO *r_amount_nbo); - - -int -TALER_DB_extract_amount (PGresult *result, - int row, - const char *val_name, - const char *frac_name, - const char *curr_name, - struct TALER_Amount *r_amount); - - - - -#endif /* TALER_DB_LIB_H_ */ - -/* end of db/db_pq.h */ |