|
|
|
|
@ -26,6 +26,7 @@ import java.time.LocalDateTime;
@@ -26,6 +26,7 @@ import java.time.LocalDateTime;
|
|
|
|
|
import java.time.LocalTime; |
|
|
|
|
import java.time.Period; |
|
|
|
|
import java.time.ZoneId; |
|
|
|
|
import java.time.ZoneOffset; |
|
|
|
|
import java.util.ArrayList; |
|
|
|
|
import java.util.Arrays; |
|
|
|
|
import java.util.Collection; |
|
|
|
|
@ -70,6 +71,8 @@ public abstract class Jsr310Converters {
@@ -70,6 +71,8 @@ public abstract class Jsr310Converters {
|
|
|
|
|
converters.add(LocalTimeToDateConverter.INSTANCE); |
|
|
|
|
converters.add(DateToInstantConverter.INSTANCE); |
|
|
|
|
converters.add(InstantToDateConverter.INSTANCE); |
|
|
|
|
converters.add(LocalDateTimeToInstantConverter.INSTANCE); |
|
|
|
|
converters.add(InstantToLocalDateTimeConverter.INSTANCE); |
|
|
|
|
converters.add(ZoneIdToStringConverter.INSTANCE); |
|
|
|
|
converters.add(StringToZoneIdConverter.INSTANCE); |
|
|
|
|
converters.add(DurationToStringConverter.INSTANCE); |
|
|
|
|
@ -178,6 +181,28 @@ public abstract class Jsr310Converters {
@@ -178,6 +181,28 @@ public abstract class Jsr310Converters {
|
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public static enum LocalDateTimeToInstantConverter implements Converter<LocalDateTime, Instant> { |
|
|
|
|
|
|
|
|
|
INSTANCE; |
|
|
|
|
|
|
|
|
|
@Nonnull |
|
|
|
|
@Override |
|
|
|
|
public Instant convert(LocalDateTime source) { |
|
|
|
|
return source.atZone(systemDefault()).toInstant(); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public static enum InstantToLocalDateTimeConverter implements Converter<Instant, LocalDateTime> { |
|
|
|
|
|
|
|
|
|
INSTANCE; |
|
|
|
|
|
|
|
|
|
@Nonnull |
|
|
|
|
@Override |
|
|
|
|
public LocalDateTime convert(Instant source) { |
|
|
|
|
return LocalDateTime.ofInstant(source, systemDefault()); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@WritingConverter |
|
|
|
|
public static enum ZoneIdToStringConverter implements Converter<ZoneId, String> { |
|
|
|
|
|
|
|
|
|
|