commit 896255878f365bcbf05647c9ab0be795282e9dd7
parent 5842398733922c14743772468a1240422fac4d36
Author: Marcello Stanisci <stanisci.m@gmail.com>
Date: Wed, 22 Jan 2020 22:08:38 +0100
Fix dates range.
Diffstat:
1 file changed, 14 insertions(+), 5 deletions(-)
diff --git a/util/src/main/kotlin/ebics_h004/EbicsRequest.kt b/util/src/main/kotlin/ebics_h004/EbicsRequest.kt
@@ -2,12 +2,15 @@ package tech.libeufin.util.ebics_h004
import org.apache.xml.security.binding.xmldsig.SignatureType
import tech.libeufin.util.CryptoUtil
+import tech.libeufin.util.LOGGER
+import tech.libeufin.util.XMLUtil
import java.math.BigInteger
import java.security.interfaces.RSAPublicKey
import javax.xml.bind.annotation.*
import javax.xml.bind.annotation.adapters.CollapsedStringAdapter
import javax.xml.bind.annotation.adapters.HexBinaryAdapter
import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter
+import javax.xml.datatype.DatatypeConstants
import javax.xml.datatype.XMLGregorianCalendar
@XmlAccessorType(XmlAccessType.NONE)
@@ -255,9 +258,11 @@ class EbicsRequest {
@XmlType(name = "", propOrder = ["start", "end"])
class DateRange {
@get:XmlElement(name = "Start")
+ @get:XmlSchemaType(name = "date")
lateinit var start: XMLGregorianCalendar
@get:XmlElement(name = "End")
+ @get:XmlSchemaType(name = "date")
lateinit var end: XMLGregorianCalendar
}
@@ -317,6 +322,12 @@ class EbicsRequest {
dateEnd: XMLGregorianCalendar
): EbicsRequest {
+ /**
+ * Make sure there is NO time portion.
+ */
+ dateStart.timezone = DatatypeConstants.FIELD_UNDEFINED
+ dateEnd.timezone = DatatypeConstants.FIELD_UNDEFINED
+
val tmp = createForDownloadInitializationPhase(
userId,
partnerId,
@@ -328,11 +339,9 @@ class EbicsRequest {
aOrderType
)
- (tmp.header.static.orderDetails?.orderParams as StandardOrderParams).apply {
- dateRange?.apply {
- start = dateStart
- end = dateEnd
- }
+ (tmp.header.static.orderDetails?.orderParams as StandardOrderParams).dateRange = DateRange().apply {
+ start = dateStart
+ end = dateEnd
}
return tmp