gnunet-svn
[Top][All Lists]
Advanced

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

[GNUnet-SVN] [libeufin] branch master updated: override new{}


From: gnunet
Subject: [GNUnet-SVN] [libeufin] branch master updated: override new{}
Date: Fri, 04 Oct 2019 17:30:27 +0200

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

marcello pushed a commit to branch master
in repository libeufin.

The following commit(s) were added to refs/heads/master by this push:
     new 4332508  override new{}
4332508 is described below

commit 43325087dc1b85f584d903c70bad1979781d3ac3
Author: Marcello Stanisci <address@hidden>
AuthorDate: Fri Oct 4 17:30:21 2019 +0200

    override new{}
---
 src/main/kotlin/tech/libeufin/DB.kt                   | 18 ++++++------------
 src/main/kotlin/tech/libeufin/Main.kt                 | 19 ++++++++++++++-----
 .../kotlin/tech/libeufin/{XMLTransform.kt => XML.kt}  | 18 +++++++++++++-----
 3 files changed, 33 insertions(+), 22 deletions(-)

diff --git a/src/main/kotlin/tech/libeufin/DB.kt 
b/src/main/kotlin/tech/libeufin/DB.kt
index 339f869..f477b10 100644
--- a/src/main/kotlin/tech/libeufin/DB.kt
+++ b/src/main/kotlin/tech/libeufin/DB.kt
@@ -99,14 +99,12 @@ object EbicsUsers: IntIdTable() {
 
 class EbicsUser(id: EntityID<Int>) : IntEntity(id){
     companion object : IntEntityClass<EbicsUser>(EbicsUsers) {
-        fun newUser() : EbicsUser {
-            var row = Companion.new {
-            }
+        override fun new(init: EbicsUser.() -> Unit): EbicsUser {
+            var row = super.new(init)
             row.userId = "u${row.id}"
             return row
         }
     }
-
     var userId by EbicsUsers.userId
 }
 
@@ -114,16 +112,14 @@ class EbicsUser(id: EntityID<Int>) : IntEntity(id){
  * Table for UserID.
  */
 object EbicsPartners: IntIdTable() {
-    // For simplicity, this entity is implemented by the
-    // 'id' field provided by the table constructor by default.
     val partnerId = varchar("partnerId", 
EBICS_PARTNER_ID_MAX_LENGTH).nullable()
 }
 
 
 class EbicsPartner(id: EntityID<Int>) : IntEntity(id) {
     companion object : IntEntityClass<EbicsPartner>(EbicsPartners) {
-        fun newUser(): EbicsPartner {
-            var row = EbicsPartner.new { }
+        override fun new(init: EbicsPartner.() -> Unit): EbicsPartner {
+            var row = super.new(init)
             row.partnerId = "p${row.id}"
             return row
         }
@@ -136,15 +132,13 @@ class EbicsPartner(id: EntityID<Int>) : IntEntity(id) {
  * Table for UserID.
  */
 object EbicsSystems: IntIdTable() {
-    // For simplicity, this entity is implemented by the
-    // 'id' field provided by the table constructor by default.
     val systemId = EbicsPartners.varchar("systemId", 
EBICS_SYSTEM_ID_MAX_LENGTH).nullable()
 }
 
 class EbicsSystem(id: EntityID<Int>) : IntEntity(id) {
     companion object : IntEntityClass<EbicsSystem>(EbicsSystems) {
-        fun newUser(): EbicsSystem {
-            var row = EbicsSystem.new { }
+        override fun new(init: EbicsSystem.() -> Unit): EbicsSystem {
+            var row = super.new(init)
             row.systemId = "s${row.id}"
             return row
         }
diff --git a/src/main/kotlin/tech/libeufin/Main.kt 
b/src/main/kotlin/tech/libeufin/Main.kt
index a6ca473..beb4b27 100644
--- a/src/main/kotlin/tech/libeufin/Main.kt
+++ b/src/main/kotlin/tech/libeufin/Main.kt
@@ -43,7 +43,7 @@ import javax.xml.bind.JAXBElement
 
 fun main() {
 
-    val xmlProcess = XMLTransform()
+    val xmlProcess = XML()
     val logger = getLogger()
     dbCreateTables()
 
@@ -77,7 +77,7 @@ fun main() {
                 logger.info(body.toString())
 
                 val returnId = transaction {
-                    var myUserId = EbicsUser.newUser()
+                    var myUserId = EbicsUser.new { }
                     val myPartnerId = EbicsPartner.new { }
                     val mySystemId = EbicsSystem.new { }
                     val subscriber = EbicsSubscriber.new {
@@ -160,9 +160,7 @@ fun main() {
 
             post("/ebicsweb") {
                 val body: String = call.receiveText()
-                logger.debug("Body: $body")
                 val bodyDocument: Document? = 
xmlProcess.parseStringIntoDom(body)
-
                 if (bodyDocument == null) {
                     call.respondText(
                         contentType = ContentType.Application.Xml,
@@ -181,9 +179,20 @@ fun main() {
                     return@post
                 }
 
-                logger.info("Processing", 
bodyDocument.documentElement.localName)
+                logger.info("Processing 
${bodyDocument.documentElement.localName}")
 
                 when (bodyDocument.documentElement.localName) {
+                    "ebicsUnsecuredRequest" -> {
+
+                        /* Manage request.  */
+
+                        call.respond(
+                            HttpStatusCode.NotImplemented,
+                            SandboxError("Not implemented")
+                        )
+                        return@post
+                    }
+
                     "ebicsHEVRequest" -> {
                         val hevResponse = HEVResponse(
                             "000000",
diff --git a/src/main/kotlin/tech/libeufin/XMLTransform.kt 
b/src/main/kotlin/tech/libeufin/XML.kt
similarity index 88%
rename from src/main/kotlin/tech/libeufin/XMLTransform.kt
rename to src/main/kotlin/tech/libeufin/XML.kt
index e64f82b..a00394d 100644
--- a/src/main/kotlin/tech/libeufin/XMLTransform.kt
+++ b/src/main/kotlin/tech/libeufin/XML.kt
@@ -46,17 +46,24 @@ import javax.xml.validation.SchemaFactory
  * This class takes care of importing XSDs and validate
  * XMLs against those.
  */
-class XMLTransform {
+class XML {
 
     /**
      * Bundle of all the XSDs loaded in memory, from disk.
      */
     private val bundle = {
         val classLoader = ClassLoader.getSystemClassLoader()
-        val ebicsHevPath = classLoader.getResourceAsStream("ebics_hev.xsd")
         val schemas = arrayOf(
-            StreamSource(ebicsHevPath)
-            // other StreamSources for other schemas here ..
+            // StreamSource(classLoader.getResourceAsStream("ebics_hev.xsd")),
+            // StreamSource(classLoader.getResourceAsStream("ebics_H004.xsd")),
+            // 
StreamSource(classLoader.getResourceAsStream("ebics_orders_H004.xsd")),
+            
StreamSource(classLoader.getResourceAsStream("xmldsig-core-schema.xsd")),
+            
StreamSource(classLoader.getResourceAsStream("ebics_types_H004.xsd")),
+            // 
StreamSource(classLoader.getResourceAsStream("ebics_signature.xsd")),
+            // 
StreamSource(classLoader.getResourceAsStream("ebics_response_H004.xsd")),
+            // 
StreamSource(classLoader.getResourceAsStream("ebics_keymgmt_response_H004.xsd")),
+            
StreamSource(classLoader.getResourceAsStream("ebics_keymgmt_request_H004.xsd"))
+
         )
 
         try {
@@ -64,6 +71,7 @@ class XMLTransform {
             sf.newSchema(schemas)
         } catch (e: SAXException) {
             e.printStackTrace()
+            // FIXME: must stop everything if schemas fail to load.
             null
         }
     }()
@@ -105,7 +113,7 @@ class XMLTransform {
         try {
             validator?.validate(xmlDoc)
         } catch (e: SAXException) {
-            e.printStackTrace()
+            println(e.message)
             return false;
         } catch (e: IOException) {
             e.printStackTrace()

-- 
To stop receiving notification emails like this one, please contact
address@hidden.



reply via email to

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