Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/stefan-niedermann/nextcloud-deck.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordesperateCoder <echotodevnull@gmail.com>2020-05-17 17:07:01 +0300
committerdesperateCoder <echotodevnull@gmail.com>2020-05-17 17:07:01 +0300
commit9610174a17393c4d8e3846e661c029037f96ac6e (patch)
tree8b5b19b595fb73e5fa04cb422a8a2f4e6e717244 /app/src/main/java/it/niedermann/nextcloud/deck/api
parent7c353796069161bc30b5ea6d5fff252a4d1fb20f (diff)
#505 proper time parsing ISO 8601
Diffstat (limited to 'app/src/main/java/it/niedermann/nextcloud/deck/api')
-rw-r--r--app/src/main/java/it/niedermann/nextcloud/deck/api/JsonToEntityParser.java19
1 files changed, 6 insertions, 13 deletions
diff --git a/app/src/main/java/it/niedermann/nextcloud/deck/api/JsonToEntityParser.java b/app/src/main/java/it/niedermann/nextcloud/deck/api/JsonToEntityParser.java
index b92b1d57f..be9ea7b89 100644
--- a/app/src/main/java/it/niedermann/nextcloud/deck/api/JsonToEntityParser.java
+++ b/app/src/main/java/it/niedermann/nextcloud/deck/api/JsonToEntityParser.java
@@ -4,12 +4,13 @@ import com.google.gson.JsonArray;
import com.google.gson.JsonElement;
import com.google.gson.JsonObject;
-import java.text.ParseException;
-import java.text.SimpleDateFormat;
+import org.threeten.bp.DateTimeUtils;
+import org.threeten.bp.ZonedDateTime;
+import org.threeten.bp.format.DateTimeFormatter;
+
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
-import java.util.TimeZone;
import it.niedermann.nextcloud.deck.DeckLog;
import it.niedermann.nextcloud.deck.exceptions.DeckException;
@@ -35,11 +36,6 @@ import static it.niedermann.nextcloud.deck.exceptions.DeckException.Hint.CAPABIL
import static it.niedermann.nextcloud.deck.exceptions.DeckException.Hint.CAPABILITIES_VERSION_NOT_PARSABLE;
public class JsonToEntityParser {
- private static SimpleDateFormat formatter = new SimpleDateFormat(GsonConfig.DATE_PATTERN);
-
- static {
- formatter.setTimeZone(TimeZone.getTimeZone("UTC"));
- }
protected static <T> T parseJsonObject(JsonObject obj, Class<T> mType) {
if (mType == FullBoard.class) {
@@ -441,11 +437,8 @@ public class JsonToEntityParser {
if (jsonElement.isJsonNull()) {
return null;
} else {
- try {
- return formatter.parse(jsonElement.getAsString());
- } catch (ParseException e) {
- return null;
- }
+ String dateAsString = jsonElement.getAsString();
+ return DateTimeUtils.toDate(ZonedDateTime.from(DateTimeFormatter.ISO_DATE_TIME.parse(dateAsString)).toInstant());
}
}