added Date / LocalDate conversion helper

This commit is contained in:
2018-10-22 19:06:45 +02:00
parent 4d79cbc35b
commit 95d93ec222

View File

@ -1,18 +1,35 @@
package de.muehlencord.shared.util; package de.muehlencord.shared.util;
import java.time.ZoneOffset; import java.time.Instant;
import java.time.ZonedDateTime; import java.time.LocalDate;
import java.util.Date; import java.time.ZoneId;
import java.time.ZoneOffset;
/** import java.time.ZonedDateTime;
* import java.util.Date;
* @author joern@muehlencord.de
*/ /**
public class DateUtil { *
* @author joern@muehlencord.de
public static Date getCurrentTimeInUTC() { */
ZonedDateTime utc = ZonedDateTime.now(ZoneOffset.UTC); public class DateUtil {
return Date.from(utc.toInstant());
} public static Date getCurrentTimeInUTC() {
ZonedDateTime utc = ZonedDateTime.now(ZoneOffset.UTC);
} return Date.from(utc.toInstant());
}
public static Date getDate(final LocalDate localDate) {
return Date.from(localDate.atStartOfDay(ZoneId.systemDefault()).toInstant());
}
public static LocalDate getDate(final Date date) {
if (date == null)
return null;
// ensure to call toInstant on java.util.Date and not on java.sql.Date because this will throw an UnsupportedOperationException
// see Java doc of java.sql.Date.toInstant()
Instant instant = new java.util.Date(date.getTime()).toInstant();
ZonedDateTime zdt = instant.atZone(ZoneId.systemDefault());
return zdt.toLocalDate();
}
}