diff --git a/gson/extras/src/main/java/com/google/gson/typeadapters/UtcDateTypeAdapter.java b/gson/extras/src/main/java/com/google/gson/typeadapters/UtcDateTypeAdapter.java index 4b2356c1b2a5560e6809d00a8466185d4f88da78..b7e22bddc8624993df52ed3328596790c021ef98 100644 --- a/gson/extras/src/main/java/com/google/gson/typeadapters/UtcDateTypeAdapter.java +++ b/gson/extras/src/main/java/com/google/gson/typeadapters/UtcDateTypeAdapter.java @@ -19,6 +19,7 @@ package com.google.gson.typeadapters; import com.google.gson.JsonParseException; import com.google.gson.TypeAdapter; import com.google.gson.stream.JsonReader; +import com.google.gson.stream.JsonToken; import com.google.gson.stream.JsonWriter; import java.io.IOException; import java.text.ParseException; @@ -45,15 +46,15 @@ public final class UtcDateTypeAdapter extends TypeAdapter<Date> { @Override public Date read(JsonReader in) throws IOException { try { - switch (in.peek()) { - case NULL: - in.nextNull(); - return null; - default: - String date = in.nextString(); - // Instead of using iso8601Format.parse(value), we use Jackson's date parsing - // This is because Android doesn't support XXX because it is JDK 1.6 - return parse(date, new ParsePosition(0)); + if(in.peek() == JsonToken.NULL) { + in.nextNull(); + return null; + } + else { + String date = in.nextString(); + // Instead of using iso8601Format.parse(value), we use Jackson's date parsing + // This is because Android doesn't support XXX because it is JDK 1.6 + return parse(date, new ParsePosition(0)); } } catch (ParseException e) { throw new JsonParseException(e);