[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[libeufin] branch master updated: collect VEU signatures, still no verif
From: |
gnunet |
Subject: |
[libeufin] branch master updated: collect VEU signatures, still no verification |
Date: |
Wed, 13 Nov 2019 12:34:29 +0100 |
This is an automated email from the git hooks/post-receive script.
dold pushed a commit to branch master
in repository libeufin.
The following commit(s) were added to refs/heads/master by this push:
new 81db4a2 collect VEU signatures, still no verification
81db4a2 is described below
commit 81db4a24671f343525fd04dd690b66e154c22b4b
Author: Florian Dold <address@hidden>
AuthorDate: Wed Nov 13 12:34:24 2019 +0100
collect VEU signatures, still no verification
---
.../src/main/kotlin/tech/libeufin/sandbox/DB.kt | 22 ++++++++++++++++++++++
.../tech/libeufin/sandbox/EbicsProtocolBackend.kt | 19 ++++++++++++++-----
.../schema/ebics_s001/UserSignatureData.kt | 6 +++---
3 files changed, 39 insertions(+), 8 deletions(-)
diff --git a/sandbox/src/main/kotlin/tech/libeufin/sandbox/DB.kt
b/sandbox/src/main/kotlin/tech/libeufin/sandbox/DB.kt
index 2b48dd7..7f1e97b 100644
--- a/sandbox/src/main/kotlin/tech/libeufin/sandbox/DB.kt
+++ b/sandbox/src/main/kotlin/tech/libeufin/sandbox/DB.kt
@@ -234,6 +234,28 @@ class EbicsUploadTransactionEntity(id: EntityID<String>) :
Entity<String>(id) {
}
+object EbicsOrderSignaturesTable : IntIdTable() {
+ val orderID = text("orderID")
+ val orderType = text("orderType")
+ val partnerID = text("partnerID")
+ val userID = text("userID")
+ val signatureAlgorithm = text("signatureAlgorithm")
+ val signatureValue = blob("signatureValue")
+}
+
+
+class EbicsOrderSignatureEntity(id: EntityID<Int>) : IntEntity(id) {
+ companion object :
IntEntityClass<EbicsOrderSignatureEntity>(EbicsOrderSignaturesTable)
+
+ var orderID by EbicsOrderSignaturesTable.orderID
+ var orderType by EbicsOrderSignaturesTable.orderType
+ var partnerID by EbicsOrderSignaturesTable.partnerID
+ var userID by EbicsOrderSignaturesTable.userID
+ var signatureAlgorithm by EbicsOrderSignaturesTable.signatureAlgorithm
+ var signatureValue by EbicsOrderSignaturesTable.signatureValue
+}
+
+
object EbicsUploadTransactionChunksTable : IdTable<String>() {
override val id =
text("transactionID").entityId()
diff --git
a/sandbox/src/main/kotlin/tech/libeufin/sandbox/EbicsProtocolBackend.kt
b/sandbox/src/main/kotlin/tech/libeufin/sandbox/EbicsProtocolBackend.kt
index 4b90592..7f3cf99 100644
--- a/sandbox/src/main/kotlin/tech/libeufin/sandbox/EbicsProtocolBackend.kt
+++ b/sandbox/src/main/kotlin/tech/libeufin/sandbox/EbicsProtocolBackend.kt
@@ -540,6 +540,8 @@ suspend fun ApplicationCall.ebicsweb() {
val transactionID =
EbicsOrderUtil.generateTransactionId()
val orderType =
requestObject.header.static.orderDetails?.orderType ?: throw
EbicsInvalidRequestError()
+ val partnerID = staticHeader.partnerID ?: throw
EbicsInvalidRequestError()
+ val userID = staticHeader.userID ?: throw
EbicsInvalidRequestError()
if (staticHeader.numSegments == null) {
println("handling initialization for order type
$orderType")
val response = when (orderType) {
@@ -602,11 +604,6 @@ suspend fun ApplicationCall.ebicsweb() {
val plainSigData =
InflaterInputStream(decryptedSignatureData.inputStream()).use {
it.readAllBytes()
}
- //val sigDataObject =
XMLUtil.convertStringToJaxb<OrderSignatureData>(plainSigData)
- println("signature data:
${plainSigData.toString(Charsets.UTF_8)}")
-
- val sig =
XMLUtil.convertStringToJaxb<UserSignatureData>(plainSigData.toString(Charsets.UTF_8))
- val sigVal =
sig.value.orderSignatureList?.get(0)?.signatureValue
println("creating upload transaction for
transactionID $transactionID")
EbicsUploadTransactionEntity.new(transactionID) {
@@ -618,6 +615,18 @@ suspend fun ApplicationCall.ebicsweb() {
this.numSegments = numSegments.toInt()
this.transactionKeyEnc =
SerialBlob(transactionKeyEnc)
}
+ val sigObj =
XMLUtil.convertStringToJaxb<UserSignatureData>(plainSigData.toString(Charsets.UTF_8))
+ for (sig in sigObj.value.orderSignatureList ?:
listOf()) {
+ EbicsOrderSignatureEntity.new {
+ this.orderID = orderID
+ this.orderType = orderType
+ this.partnerID = sig.partnerID
+ this.userID = sig.userID
+ this.signatureAlgorithm =
sig.signatureVersion
+ this.signatureValue =
SerialBlob(sig.signatureValue)
+ }
+ }
+
EbicsResponse.createForUploadInitializationPhase(transactionID, orderID)
}
}
diff --git
a/sandbox/src/main/kotlin/tech/libeufin/schema/ebics_s001/UserSignatureData.kt
b/sandbox/src/main/kotlin/tech/libeufin/schema/ebics_s001/UserSignatureData.kt
index 615bf1f..c014f14 100644
---
a/sandbox/src/main/kotlin/tech/libeufin/schema/ebics_s001/UserSignatureData.kt
+++
b/sandbox/src/main/kotlin/tech/libeufin/schema/ebics_s001/UserSignatureData.kt
@@ -10,7 +10,7 @@ class UserSignatureData {
var orderSignatureList: List<OrderSignatureData>? = null
@XmlAccessorType(XmlAccessType.NONE)
- @XmlType(name = "", propOrder = ["signatureVersion", "signatureValue",
"partnerID", "customerID"])
+ @XmlType(name = "", propOrder = ["signatureVersion", "signatureValue",
"partnerID", "userID"])
class OrderSignatureData {
@XmlElement(name = "SignatureVersion")
lateinit var signatureVersion: String
@@ -21,7 +21,7 @@ class UserSignatureData {
@XmlElement(name = "PartnerID")
lateinit var partnerID: String
- @XmlElement(name = "CustomerID")
- lateinit var customerID: String
+ @XmlElement(name = "UserID")
+ lateinit var userID: String
}
}
\ No newline at end of file
--
To stop receiving notification emails like this one, please contact
address@hidden.
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [libeufin] branch master updated: collect VEU signatures, still no verification,
gnunet <=