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:
Diffstat (limited to 'app/src/main/java/it/niedermann/nextcloud/deck/api/GsonUTCDateAdapter.java')
-rw-r--r--app/src/main/java/it/niedermann/nextcloud/deck/api/GsonUTCDateAdapter.java48
1 files changed, 0 insertions, 48 deletions
diff --git a/app/src/main/java/it/niedermann/nextcloud/deck/api/GsonUTCDateAdapter.java b/app/src/main/java/it/niedermann/nextcloud/deck/api/GsonUTCDateAdapter.java
deleted file mode 100644
index 4d30b3e81..000000000
--- a/app/src/main/java/it/niedermann/nextcloud/deck/api/GsonUTCDateAdapter.java
+++ /dev/null
@@ -1,48 +0,0 @@
-package it.niedermann.nextcloud.deck.api;
-
-import com.google.gson.JsonDeserializationContext;
-import com.google.gson.JsonDeserializer;
-import com.google.gson.JsonElement;
-import com.google.gson.JsonParseException;
-import com.google.gson.JsonPrimitive;
-import com.google.gson.JsonSerializationContext;
-import com.google.gson.JsonSerializer;
-
-import java.lang.reflect.Type;
-import java.text.DateFormat;
-import java.text.ParseException;
-import java.text.SimpleDateFormat;
-import java.util.Date;
-import java.util.Locale;
-import java.util.TimeZone;
-import java.util.regex.Pattern;
-
-public class GsonUTCDateAdapter implements JsonSerializer<Date>, JsonDeserializer<Date> {
-
- private final DateFormat dateFormat;
- private final Pattern UNIX_TIMESTAMP = Pattern.compile("^[0-9]+$");
-
- public GsonUTCDateAdapter() {
- //This is the format I need
- dateFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'", Locale.US);
- //This is the key line which converts the date to UTC which cannot be accessed with the default serializer
- dateFormat.setTimeZone(TimeZone.getTimeZone("UTC"));
- }
-
- @Override public synchronized JsonElement serialize(Date date, Type type, JsonSerializationContext jsonSerializationContext) {
- return new JsonPrimitive(dateFormat.format(date));
- }
-
- @Override public synchronized Date deserialize(JsonElement jsonElement, Type type, JsonDeserializationContext jsonDeserializationContext) {
- String dateValue = jsonElement.getAsString();
- try {
- return dateFormat.parse(dateValue);
- } catch (ParseException e) {
- // fallback to unix timestamp?
- if (UNIX_TIMESTAMP.matcher(dateValue).matches()){
- return new Date(Long.valueOf(dateValue));
- }
- throw new JsonParseException(e);
- }
- }
-} \ No newline at end of file