[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[libeufin] branch master updated: installing nexus SQL procedures file
From: |
gnunet |
Subject: |
[libeufin] branch master updated: installing nexus SQL procedures file |
Date: |
Tue, 24 Oct 2023 12:25:52 +0200 |
This is an automated email from the git hooks/post-receive script.
ms pushed a commit to branch master
in repository libeufin.
The following commit(s) were added to refs/heads/master by this push:
new 661c1df1 installing nexus SQL procedures file
661c1df1 is described below
commit 661c1df15b4c86d80beb34a6089c2eb3e74b14a7
Author: MS <ms@taler.net>
AuthorDate: Tue Oct 24 12:25:31 2023 +0200
installing nexus SQL procedures file
---
Makefile | 1 -
database-versioning/libeufin-nexus-procedures.sql | 41 +++++++++++++++++++++++
2 files changed, 41 insertions(+), 1 deletion(-)
diff --git a/Makefile b/Makefile
index a37e066e..2007a905 100644
--- a/Makefile
+++ b/Makefile
@@ -43,7 +43,6 @@ install-bank:
install contrib/currencies.conf $(bank_config_dir)/
install -D database-versioning/libeufin-bank*.sql -t $(bank_sql_dir)
install -D database-versioning/versioning.sql -t $(bank_sql_dir)
- install -D database-versioning/libeufin-bank-procedures.sql -t
$(bank_sql_dir)
install -d $(spa_dir)
cp contrib/wallet-core/demobank/* $(spa_dir)/
./gradlew -q -Pprefix=$(abs_destdir)$(prefix) bank:installToPrefix
diff --git a/database-versioning/libeufin-nexus-procedures.sql
b/database-versioning/libeufin-nexus-procedures.sql
new file mode 100644
index 00000000..3dd91bc5
--- /dev/null
+++ b/database-versioning/libeufin-nexus-procedures.sql
@@ -0,0 +1,41 @@
+BEGIN;
+SET search_path TO libeufin_nexus;
+
+CREATE OR REPLACE FUNCTION bounce_payment(
+ IN in_incoming_transaction_id BIGINT
+ ,IN in_initiation_time BIGINT
+ ,OUT out_nx_incoming_payment BOOLEAN
+)
+LANGUAGE plpgsql AS $$
+BEGIN
+
+INSERT INTO initiated_outgoing_transactions (
+ amount
+ ,wire_transfer_subject
+ ,credit_payto_uri
+ ,in_initiation_time
+ )
+ SELECT
+ amount
+ ,'refund: ' || wire_transfer_subject
+ ,debit_payto_uri
+ ,in_initiation_time
+ FROM incoming_transactions
+ WHERE incoming_transaction_id = in_incoming_transaction_id;
+
+IF NOT FOUND THEN
+ out_nx_incoming_payment=TRUE;
+ RETURN;
+END IF;
+out_nx_incoming_payment=FALSE;
+
+-- finally setting the payment as bounced. Not checking
+-- the update outcome since the row existence was checked
+-- just above.
+
+UPDATE incoming_transactions
+ SET bounced = true
+ WHERE incoming_transaction_id = in_incoming_transaction_id;
+END $$;
+
+COMMENT ON FUNCTION bounce_payment(BIGINT, BIGINT) IS 'Marks an incoming
payment as bounced and initiates its refunding payment';
--
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [libeufin] branch master updated: installing nexus SQL procedures file,
gnunet <=