aboutsummaryrefslogtreecommitdiff
path: root/juick-common/src/main/java/com/juick/util
diff options
context:
space:
mode:
Diffstat (limited to 'juick-common/src/main/java/com/juick/util')
-rw-r--r--juick-common/src/main/java/com/juick/util/DateFormatter.java7
-rw-r--r--juick-common/src/main/java/com/juick/util/DateFormattersHolder.java15
2 files changed, 19 insertions, 3 deletions
diff --git a/juick-common/src/main/java/com/juick/util/DateFormatter.java b/juick-common/src/main/java/com/juick/util/DateFormatter.java
index f9e23a91..8f569562 100644
--- a/juick-common/src/main/java/com/juick/util/DateFormatter.java
+++ b/juick-common/src/main/java/com/juick/util/DateFormatter.java
@@ -22,6 +22,7 @@ import org.apache.commons.lang3.StringUtils;
import java.time.Instant;
import java.time.LocalDateTime;
import java.time.ZoneOffset;
+import java.time.ZonedDateTime;
import java.time.format.DateTimeFormatter;
import java.util.Locale;
@@ -39,7 +40,7 @@ public class DateFormatter {
if (ts == null)
return null;
- LocalDateTime ldt = LocalDateTime.ofInstant(ts, ZoneOffset.UTC);
+ ZonedDateTime ldt = ZonedDateTime.ofInstant(ts, ZoneOffset.UTC);
return ldt.format(formatter);
}
@@ -49,8 +50,8 @@ public class DateFormatter {
if (StringUtils.isBlank(v))
return null;
- LocalDateTime ldt = LocalDateTime.parse(v, formatter);
+ ZonedDateTime ldt = ZonedDateTime.parse(v, formatter);
- return ldt.toInstant(ZoneOffset.UTC);
+ return ldt.toInstant();
}
}
diff --git a/juick-common/src/main/java/com/juick/util/DateFormattersHolder.java b/juick-common/src/main/java/com/juick/util/DateFormattersHolder.java
index 09fd17d7..8292e68e 100644
--- a/juick-common/src/main/java/com/juick/util/DateFormattersHolder.java
+++ b/juick-common/src/main/java/com/juick/util/DateFormattersHolder.java
@@ -57,4 +57,19 @@ public class DateFormattersHolder {
}
return localInstance;
}
+
+ private static volatile DateFormatter httpDateFormatter;
+
+ public static DateFormatter getHttpDateFormatter() {
+ DateFormatter localInstance = httpDateFormatter;
+ if (localInstance == null) {
+ synchronized (DateFormatter.class) {
+ localInstance = httpDateFormatter;
+ if (localInstance == null) {
+ httpDateFormatter = localInstance = new DateFormatter("EEE, dd MMM yyyy HH:mm:ss O");
+ }
+ }
+ }
+ return localInstance;
+ }
}