Implemented a mechanism to set the offset/time-zone to use for conversions
[jpa-converters] / src / main / java / de / juplo / jpa / converters / ZonedDateTimeConverter.java
index 63637ee..69908b8 100644 (file)
@@ -1,7 +1,6 @@
 package de.juplo.jpa.converters;
 
 import java.sql.Timestamp;
-import java.time.ZoneId;
 import java.time.ZonedDateTime;
 import javax.persistence.AttributeConverter;
 import javax.persistence.Converter;
@@ -17,12 +16,16 @@ public class ZonedDateTimeConverter implements AttributeConverter<ZonedDateTime,
   @Override
   public Timestamp convertToDatabaseColumn(ZonedDateTime zdt)
   {
-    return Timestamp.from(zdt.withZoneSameInstant(ZoneId.systemDefault()).toInstant());
+    if (zdt == null)
+      return null;
+    return Timestamp.from(zdt.withZoneSameInstant(TimeConversions.getZoneId()).toInstant());
   }
 
   @Override
   public ZonedDateTime convertToEntityAttribute(Timestamp ts)
   {
-    return ZonedDateTime.ofInstant(ts.toInstant(), ZoneId.systemDefault());
+    if (ts == null)
+      return null;
+    return ZonedDateTime.ofInstant(ts.toInstant(), TimeConversions.getZoneId());
   }
 }