aboutsummaryrefslogtreecommitdiff
path: root/src/exchangedb/pg_select_purse.c
diff options
context:
space:
mode:
authorChristian Grothoff <christian@grothoff.org>2022-12-28 23:44:17 +0100
committerChristian Grothoff <christian@grothoff.org>2022-12-28 23:44:17 +0100
commit880c14909bfdaf1199ffc5da989eccb52f6cac12 (patch)
treeb135e2ea69a1df8ec2d09492873e025e8b2d2a06 /src/exchangedb/pg_select_purse.c
parent5533bcbf651eafce682212ce635bdf8ce83d4bcb (diff)
downloadexchange-880c14909bfdaf1199ffc5da989eccb52f6cac12.tar.xz
add notification logic on purse deletion
Diffstat (limited to 'src/exchangedb/pg_select_purse.c')
-rw-r--r--src/exchangedb/pg_select_purse.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/exchangedb/pg_select_purse.c b/src/exchangedb/pg_select_purse.c
index e2a36c33e..9143e8721 100644
--- a/src/exchangedb/pg_select_purse.c
+++ b/src/exchangedb/pg_select_purse.c
@@ -35,7 +35,8 @@ TEH_PG_select_purse (
struct TALER_Amount *amount,
struct TALER_Amount *deposited,
struct TALER_PrivateContractHashP *h_contract_terms,
- struct GNUNET_TIME_Timestamp *merge_timestamp)
+ struct GNUNET_TIME_Timestamp *merge_timestamp,
+ bool *purse_deleted)
{
struct PostgresClosure *pg = cls;
struct GNUNET_PQ_QueryParam params[] = {
@@ -57,6 +58,8 @@ TEH_PG_select_purse (
GNUNET_PQ_result_spec_timestamp ("merge_timestamp",
merge_timestamp),
NULL),
+ GNUNET_PQ_result_spec_bool ("purse_deleted",
+ purse_deleted),
GNUNET_PQ_result_spec_end
};
@@ -72,8 +75,10 @@ TEH_PG_select_purse (
",balance_val"
",balance_frac"
",merge_timestamp"
+ ",purse_sig IS NOT NULL AS purse_deleted"
" FROM purse_requests"
" LEFT JOIN purse_merges USING (purse_pub)"
+ " LEFT JOIN purse_deletion USING (purse_pub)"
" WHERE purse_pub=$1;");
*merge_timestamp = GNUNET_TIME_UNIT_FOREVER_TS;
return GNUNET_PQ_eval_prepared_singleton_select (pg->conn,