From 6e96f8e7390bebcfdd32d2e4779e61edda1401f5 Mon Sep 17 00:00:00 2001 From: "Stefan E. Funk" <funk@sub.uni-goettingen.de> Date: Tue, 14 Feb 2023 15:17:47 +0100 Subject: [PATCH] fix: implement comments from mr --- .../info/textgrid/middleware/OaipmhUtilities.java | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/oaipmh-core/src/main/java/info/textgrid/middleware/OaipmhUtilities.java b/oaipmh-core/src/main/java/info/textgrid/middleware/OaipmhUtilities.java index fe613333..361277d3 100644 --- a/oaipmh-core/src/main/java/info/textgrid/middleware/OaipmhUtilities.java +++ b/oaipmh-core/src/main/java/info/textgrid/middleware/OaipmhUtilities.java @@ -155,18 +155,22 @@ public class OaipmhUtilities { log.fine("original DateTimeString: " + originalDateTimeString); + Instant instant; try { OffsetDateTime odt = OffsetDateTime.parse(originalDateTimeString); - result = UTC_FORMATTER.format(Instant.from(odt)); + instant = Instant.from(odt); } - // TODO We are missing to set time zones on dcterms date fields!! Workaround for all DARIAH-DE - // Repository dates so far is using LocalDateTime here! + // NOTE We are missing to set time zones on dcterms date fields in administrative metadata! + // Workaround for all DARIAH-DE Repository dates so far (until fix) is using LocalDateTime here + // with ZoneId CET, what has been local time zone until now! catch (DateTimeParseException e) { LocalDateTime ldt = LocalDateTime.parse(originalDateTimeString); - result = UTC_FORMATTER.format(ldt.atZone(ZoneId.systemDefault()).toInstant()); + instant = ldt.atZone(ZoneId.of("CET")).toInstant(); } + result = UTC_FORMATTER.format(instant); + log.fine("parsed to UTC: " + result); return result; -- GitLab