gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[libeufin] branch master updated: DB definitions to implement Nexus' bal


From: gnunet
Subject: [libeufin] branch master updated: DB definitions to implement Nexus' balances.
Date: Thu, 02 Sep 2021 15:55:55 +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 b171cf9  DB definitions to implement Nexus' balances.
b171cf9 is described below

commit b171cf9cd2d1607e68580bbc7e65136ae186cdd3
Author: ms <ms@taler.net>
AuthorDate: Thu Sep 2 15:55:31 2021 +0200

    DB definitions to implement Nexus' balances.
---
 nexus/src/main/kotlin/tech/libeufin/nexus/DB.kt | 27 ++++++++++++++++++++++++-
 1 file changed, 26 insertions(+), 1 deletion(-)

diff --git a/nexus/src/main/kotlin/tech/libeufin/nexus/DB.kt 
b/nexus/src/main/kotlin/tech/libeufin/nexus/DB.kt
index 42b32f9..c42edc9 100644
--- a/nexus/src/main/kotlin/tech/libeufin/nexus/DB.kt
+++ b/nexus/src/main/kotlin/tech/libeufin/nexus/DB.kt
@@ -112,6 +112,32 @@ class TalerIncomingPaymentEntity(id: EntityID<Long>) : 
LongEntity(id) {
     var debtorPaytoUri by TalerIncomingPaymentsTable.debtorPaytoUri
 }
 
+/**
+ * This table logs all the balances as returned by the bank for one particular 
bank account.
+ */
+object NexusBankBalancesTable : LongIdTable() {
+    /**
+     * Balance mentioned in the bank message referenced below.  NOTE: this is 
the
+     * CLOSING balance (a.k.a. CLBD), namely the one obtained by adding the 
transactions
+     * reported in the bank message to the _previous_ CLBD.
+     */
+    val balance = text("balance") // $currency:x.y
+    val creditDebitIndicator = text("creditDebitIndicator") // CRDT or DBIT.
+    /**
+     * Message downloaded from the bank.  Must be of "history" type.
+     */
+    val bankMessage = reference("bankMessage", NexusBankMessagesTable)
+    val bankAccount = reference("bankAccount", NexusBankAccountsTable)
+}
+
+class NexusBankBalanceEntity(id: EntityID<Long>) : LongEntity(id) {
+    companion object : 
LongEntityClass<NexusBankBalanceEntity>(NexusBankBalancesTable)
+    var balance by NexusBankBalancesTable.balance
+    var creditDebitIndicator by NexusBankBalancesTable.creditDebitIndicator
+    var bankMessage by NexusBankMessageEntity referencedOn 
NexusBankBalancesTable.bankMessage
+    var bankAccount by NexusBankAccountEntity referencedOn 
NexusBankBalancesTable.bankAccount
+}
+
 /**
  * Table that stores all messages we receive from the bank.
  */
@@ -125,7 +151,6 @@ object NexusBankMessagesTable : LongIdTable() {
 
 class NexusBankMessageEntity(id: EntityID<Long>) : LongEntity(id) {
     companion object : 
LongEntityClass<NexusBankMessageEntity>(NexusBankMessagesTable)
-
     var bankConnection by NexusBankConnectionEntity referencedOn 
NexusBankMessagesTable.bankConnection
     var messageId by NexusBankMessagesTable.messageId
     var code by NexusBankMessagesTable.code

-- 
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]