gnunet-svn
[Top][All Lists]
Advanced

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

[libeufin] 03/03: remove arbitrary length constraint at DB level


From: gnunet
Subject: [libeufin] 03/03: remove arbitrary length constraint at DB level
Date: Wed, 10 Jun 2020 08:47:40 +0200

This is an automated email from the git hooks/post-receive script.

dold pushed a commit to branch master
in repository libeufin.

commit 7eb8e4cccdbafc248278199e85949a1ba63bb268
Author: Florian Dold <florian.dold@gmail.com>
AuthorDate: Wed Jun 10 12:16:36 2020 +0530

    remove arbitrary length constraint at DB level
---
 nexus/src/main/kotlin/tech/libeufin/nexus/DB.kt | 30 ++++++++++++++++---------
 1 file changed, 19 insertions(+), 11 deletions(-)

diff --git a/nexus/src/main/kotlin/tech/libeufin/nexus/DB.kt 
b/nexus/src/main/kotlin/tech/libeufin/nexus/DB.kt
index 73d2d07..58cbc9b 100644
--- a/nexus/src/main/kotlin/tech/libeufin/nexus/DB.kt
+++ b/nexus/src/main/kotlin/tech/libeufin/nexus/DB.kt
@@ -1,11 +1,10 @@
 package tech.libeufin.nexus
 
-import io.ktor.http.HttpStatusCode
 import org.jetbrains.exposed.dao.*
-import org.jetbrains.exposed.dao.id.LongIdTable
 import org.jetbrains.exposed.dao.id.EntityID
 import org.jetbrains.exposed.dao.id.IdTable
 import org.jetbrains.exposed.dao.id.IntIdTable
+import org.jetbrains.exposed.dao.id.LongIdTable
 import org.jetbrains.exposed.sql.Database
 import org.jetbrains.exposed.sql.SchemaUtils
 import org.jetbrains.exposed.sql.StdOutSqlLogger
@@ -16,8 +15,6 @@ import tech.libeufin.util.EbicsInitState
 import tech.libeufin.util.amount
 import java.sql.Connection
 
-const val ID_MAX_LENGTH = 50
-
 /**
  * This table holds the values that exchange gave to issue a payment,
  * plus a reference to the prepared pain.001 version of.  Note that
@@ -58,16 +55,13 @@ class TalerRequestedPaymentEntity(id: EntityID<Long>) : 
LongEntity(id) {
 object TalerIncomingPayments : LongIdTable() {
     val payment = reference("payment", RawBankTransactionsTable)
     val valid = bool("valid")
-
-    // avoid refunding twice!
-    val refunded = bool("refunded").default(false)
 }
 
 class TalerIncomingPaymentEntity(id: EntityID<Long>) : LongEntity(id) {
     companion object : 
LongEntityClass<TalerIncomingPaymentEntity>(TalerIncomingPayments)
+
     var payment by RawBankTransactionEntity referencedOn 
TalerIncomingPayments.payment
     var valid by TalerIncomingPayments.valid
-    var refunded by TalerIncomingPayments.refunded
 }
 
 /**
@@ -75,6 +69,7 @@ class TalerIncomingPaymentEntity(id: EntityID<Long>) : 
LongEntity(id) {
  */
 object NexusBankMessagesTable : IntIdTable() {
     val bankConnection = reference("bankConnection", NexusBankConnectionsTable)
+
     // Unique identifier for the message within the bank connection
     val messageId = text("messageId")
     val code = text("code")
@@ -110,6 +105,7 @@ object RawBankTransactionsTable : LongIdTable() {
 
 class RawBankTransactionEntity(id: EntityID<Long>) : LongEntity(id) {
     companion object : 
LongEntityClass<RawBankTransactionEntity>(RawBankTransactionsTable)
+
     var unstructuredRemittanceInformation by 
RawBankTransactionsTable.unstructuredRemittanceInformation
     var transactionType by RawBankTransactionsTable.transactionType
     var currency by RawBankTransactionsTable.currency
@@ -128,7 +124,7 @@ class RawBankTransactionEntity(id: EntityID<Long>) : 
LongEntity(id) {
  */
 object PreparedPaymentsTable : IdTable<String>() {
     /** the UUID representing this payment in the system */
-    override val id = varchar("id", ID_MAX_LENGTH).entityId()
+    override val id = text("id").entityId()
     val paymentId = long("paymentId")
     val preparationDate = long("preparationDate")
     val submissionDate = long("submissionDate").nullable()
@@ -142,8 +138,10 @@ object PreparedPaymentsTable : IdTable<String>() {
     val debitorIban = text("debitorIban")
     val debitorBic = text("debitorBic")
     val debitorName = text("debitorName").nullable()
+
     /* Indicates whether the PAIN message was sent to the bank. */
     val submitted = bool("submitted").default(false)
+
     /* Indicates whether the bank didn't perform the payment: note that
      * this state can be reached when the payment gets listed in a CRZ
      * response OR when the payment doesn't show up in a C52/C53 response */
@@ -152,6 +150,7 @@ object PreparedPaymentsTable : IdTable<String>() {
 
 class PreparedPaymentEntity(id: EntityID<String>) : Entity<String>(id) {
     companion object : EntityClass<String, 
PreparedPaymentEntity>(PreparedPaymentsTable)
+
     var paymentId by PreparedPaymentsTable.paymentId
     var preparationDate by PreparedPaymentsTable.preparationDate
     var submissionDate by PreparedPaymentsTable.submissionDate
@@ -173,17 +172,19 @@ class PreparedPaymentEntity(id: EntityID<String>) : 
Entity<String>(id) {
  * This table holds triples of <iban, bic, holder name>.
  */
 object NexusBankAccountsTable : IdTable<String>() {
-    override val id = varchar("id", ID_MAX_LENGTH).entityId()
+    override val id = text("id").entityId()
     val accountHolder = text("accountHolder")
     val iban = text("iban")
     val bankCode = text("bankCode")
     val defaultBankConnection = reference("defaultBankConnection", 
NexusBankConnectionsTable).nullable()
+
     // Highest bank message ID that this bank account is aware of.
     val highestSeenBankMessageId = integer("")
 }
 
 class NexusBankAccountEntity(id: EntityID<String>) : Entity<String>(id) {
     companion object : EntityClass<String, 
NexusBankAccountEntity>(NexusBankAccountsTable)
+
     var accountHolder by NexusBankAccountsTable.accountHolder
     var iban by NexusBankAccountsTable.iban
     var bankCode by NexusBankAccountsTable.bankCode
@@ -209,6 +210,7 @@ object EbicsSubscribersTable : IntIdTable() {
 
 class EbicsSubscriberEntity(id: EntityID<Int>) : IntEntity(id) {
     companion object : 
IntEntityClass<EbicsSubscriberEntity>(EbicsSubscribersTable)
+
     var ebicsURL by EbicsSubscribersTable.ebicsURL
     var hostID by EbicsSubscribersTable.hostID
     var partnerID by EbicsSubscribersTable.partnerID
@@ -225,13 +227,14 @@ class EbicsSubscriberEntity(id: EntityID<Int>) : 
IntEntity(id) {
 }
 
 object NexusUsersTable : IdTable<String>() {
-    override val id = varchar("id", ID_MAX_LENGTH).entityId()
+    override val id = text("id").entityId()
     val passwordHash = text("password")
     val superuser = bool("superuser")
 }
 
 class NexusUserEntity(id: EntityID<String>) : Entity<String>(id) {
     companion object : EntityClass<String, NexusUserEntity>(NexusUsersTable)
+
     var passwordHash by NexusUsersTable.passwordHash
     var superuser by NexusUsersTable.superuser
 }
@@ -244,6 +247,7 @@ object NexusBankConnectionsTable : IdTable<String>() {
 
 class NexusBankConnectionEntity(id: EntityID<String>) : Entity<String>(id) {
     companion object : EntityClass<String, 
NexusBankConnectionEntity>(NexusBankConnectionsTable)
+
     var type by NexusBankConnectionsTable.type
     var owner by NexusUserEntity referencedOn NexusBankConnectionsTable.owner
 }
@@ -256,6 +260,7 @@ object FacadesTable : IdTable<String>() {
 
 class FacadeEntity(id: EntityID<String>) : Entity<String>(id) {
     companion object : EntityClass<String, FacadeEntity>(FacadesTable)
+
     var type by FacadesTable.type
     var creator by NexusUserEntity referencedOn FacadesTable.creator
 }
@@ -263,6 +268,7 @@ class FacadeEntity(id: EntityID<String>) : 
Entity<String>(id) {
 object TalerFacadeStatesTable : IntIdTable() {
     val bankAccount = text("bankAccount")
     val bankConnection = text("bankConnection")
+
     /* "statement", "report", "notification" */
     val reserveTransferLevel = text("reserveTransferLevel")
     val intervalIncrement = text("intervalIncrement")
@@ -272,8 +278,10 @@ object TalerFacadeStatesTable : IntIdTable() {
 
 class TalerFacadeStateEntity(id: EntityID<Int>) : IntEntity(id) {
     companion object : 
IntEntityClass<TalerFacadeStateEntity>(TalerFacadeStatesTable)
+
     var bankAccount by TalerFacadeStatesTable.bankAccount
     var bankConnection by TalerFacadeStatesTable.bankConnection
+
     /* "statement", "report", "notification" */
     var reserveTransferLevel by TalerFacadeStatesTable.reserveTransferLevel
     var intervalIncrement by TalerFacadeStatesTable.intervalIncrement

-- 
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]