From e5b3f6368db33c846b094b0d695d3a1b826e3892 Mon Sep 17 00:00:00 2001 From: Inderjeet Singh Date: Wed, 4 Nov 2015 18:52:20 -0800 Subject: [PATCH] updated minimum JDK version to 1.6. Added Overrides for methods implementing an interface. --- gson/pom.xml | 4 +- .../google/gson/DefaultDateTypeAdapter.java | 2 + .../com/google/gson/FieldNamingPolicy.java | 12 +++--- gson/src/main/java/com/google/gson/Gson.java | 6 +-- .../google/gson/LongSerializationPolicy.java | 4 +- .../java/com/google/gson/TreeTypeAdapter.java | 1 + .../gson/internal/bind/ArrayTypeAdapter.java | 4 +- .../bind/CollectionTypeAdapterFactory.java | 5 ++- .../gson/internal/bind/DateTypeAdapter.java | 2 +- ...onAdapterAnnotationTypeAdapterFactory.java | 1 + .../internal/bind/MapTypeAdapterFactory.java | 6 +-- .../gson/internal/bind/ObjectTypeAdapter.java | 2 +- .../bind/ReflectiveTypeAdapterFactory.java | 4 +- .../internal/bind/SqlDateTypeAdapter.java | 2 +- .../gson/internal/bind/TimeTypeAdapter.java | 2 +- .../gson/internal/bind/TypeAdapters.java | 22 +++++----- .../com/google/gson/GsonTypeAdapterTest.java | 9 ++-- .../google/gson/MockExclusionStrategy.java | 2 + .../gson/ParameterizedTypeFixtures.java | 8 ++-- .../com/google/gson/common/TestTypes.java | 13 +++--- .../functional/CustomDeserializerTest.java | 9 +++- .../functional/CustomTypeAdaptersTest.java | 41 +++++++++++-------- .../functional/DelegateTypeAdapterTest.java | 4 +- .../com/google/gson/functional/EnumTest.java | 4 +- .../ExclusionStrategyFunctionalTest.java | 10 ++--- .../gson/functional/ExposeFieldsTest.java | 2 +- .../gson/functional/InstanceCreatorTest.java | 10 ++--- .../JsonAdapterAnnotationOnClassesTest.java | 2 +- .../JsonAdapterAnnotationOnFieldsTest.java | 2 +- .../gson/functional/NamingPolicyTest.java | 5 ++- .../functional/NullObjectAndFieldTest.java | 6 +-- ...ntimeTypeAdapterFactoryFunctionalTest.java | 2 +- .../gson/functional/TreeTypeAdaptersTest.java | 2 + .../functional/TypeAdapterPrecedenceTest.java | 2 + .../functional/TypeHierarchyAdapterTest.java | 8 ++-- .../gson/functional/UncategorizedTest.java | 2 +- 36 files changed, 126 insertions(+), 96 deletions(-) diff --git a/gson/pom.xml b/gson/pom.xml index b6f67be4..a48860af 100644 --- a/gson/pom.xml +++ b/gson/pom.xml @@ -113,8 +113,8 @@ maven-compiler-plugin 3.3 - 1.5 - 1.5 + 1.6 + 1.6 diff --git a/gson/src/main/java/com/google/gson/DefaultDateTypeAdapter.java b/gson/src/main/java/com/google/gson/DefaultDateTypeAdapter.java index aa253340..7ea945f8 100644 --- a/gson/src/main/java/com/google/gson/DefaultDateTypeAdapter.java +++ b/gson/src/main/java/com/google/gson/DefaultDateTypeAdapter.java @@ -67,6 +67,7 @@ final class DefaultDateTypeAdapter implements JsonSerializer, JsonDeserial // These methods need to be synchronized since JDK DateFormat classes are not thread-safe // See issue 162 + @Override public JsonElement serialize(Date src, Type typeOfSrc, JsonSerializationContext context) { synchronized (localFormat) { String dateFormatAsString = enUsFormat.format(src); @@ -74,6 +75,7 @@ final class DefaultDateTypeAdapter implements JsonSerializer, JsonDeserial } } + @Override public Date deserialize(JsonElement json, Type typeOfT, JsonDeserializationContext context) throws JsonParseException { if (!(json instanceof JsonPrimitive)) { diff --git a/gson/src/main/java/com/google/gson/FieldNamingPolicy.java b/gson/src/main/java/com/google/gson/FieldNamingPolicy.java index 6b4c72ca..eecb2dbb 100644 --- a/gson/src/main/java/com/google/gson/FieldNamingPolicy.java +++ b/gson/src/main/java/com/google/gson/FieldNamingPolicy.java @@ -35,7 +35,7 @@ public enum FieldNamingPolicy implements FieldNamingStrategy { * unchanged. */ IDENTITY() { - public String translateName(Field f) { + @Override public String translateName(Field f) { return f.getName(); } }, @@ -51,7 +51,7 @@ public enum FieldNamingPolicy implements FieldNamingStrategy { * */ UPPER_CAMEL_CASE() { - public String translateName(Field f) { + @Override public String translateName(Field f) { return upperCaseFirstLetter(f.getName()); } }, @@ -70,7 +70,7 @@ public enum FieldNamingPolicy implements FieldNamingStrategy { * @since 1.4 */ UPPER_CAMEL_CASE_WITH_SPACES() { - public String translateName(Field f) { + @Override public String translateName(Field f) { return upperCaseFirstLetter(separateCamelCase(f.getName(), " ")); } }, @@ -88,7 +88,7 @@ public enum FieldNamingPolicy implements FieldNamingStrategy { * */ LOWER_CASE_WITH_UNDERSCORES() { - public String translateName(Field f) { + @Override public String translateName(Field f) { return separateCamelCase(f.getName(), "_").toLowerCase(Locale.ENGLISH); } }, @@ -111,7 +111,7 @@ public enum FieldNamingPolicy implements FieldNamingStrategy { * @since 1.4 */ LOWER_CASE_WITH_DASHES() { - public String translateName(Field f) { + @Override public String translateName(Field f) { return separateCamelCase(f.getName(), "-").toLowerCase(Locale.ENGLISH); } }; @@ -166,4 +166,4 @@ public enum FieldNamingPolicy implements FieldNamingStrategy { ? firstCharacter + srcString.substring(indexOfSubstring) : String.valueOf(firstCharacter); } -} \ No newline at end of file +} diff --git a/gson/src/main/java/com/google/gson/Gson.java b/gson/src/main/java/com/google/gson/Gson.java index d3b172a8..ad17db96 100644 --- a/gson/src/main/java/com/google/gson/Gson.java +++ b/gson/src/main/java/com/google/gson/Gson.java @@ -125,16 +125,16 @@ public final class Gson { final JsonDeserializationContext deserializationContext = new JsonDeserializationContext() { @SuppressWarnings("unchecked") - public T deserialize(JsonElement json, Type typeOfT) throws JsonParseException { + @Override public T deserialize(JsonElement json, Type typeOfT) throws JsonParseException { return (T) fromJson(json, typeOfT); } }; final JsonSerializationContext serializationContext = new JsonSerializationContext() { - public JsonElement serialize(Object src) { + @Override public JsonElement serialize(Object src) { return toJsonTree(src); } - public JsonElement serialize(Object src, Type typeOfSrc) { + @Override public JsonElement serialize(Object src, Type typeOfSrc) { return toJsonTree(src, typeOfSrc); } }; diff --git a/gson/src/main/java/com/google/gson/LongSerializationPolicy.java b/gson/src/main/java/com/google/gson/LongSerializationPolicy.java index 3d9a2da1..7b732bab 100644 --- a/gson/src/main/java/com/google/gson/LongSerializationPolicy.java +++ b/gson/src/main/java/com/google/gson/LongSerializationPolicy.java @@ -32,7 +32,7 @@ public enum LongSerializationPolicy { * {@code {"f":123}}. */ DEFAULT() { - public JsonElement serialize(Long value) { + @Override public JsonElement serialize(Long value) { return new JsonPrimitive(value); } }, @@ -43,7 +43,7 @@ public enum LongSerializationPolicy { * {@code {"f":"123"}}. */ STRING() { - public JsonElement serialize(Long value) { + @Override public JsonElement serialize(Long value) { return new JsonPrimitive(String.valueOf(value)); } }; diff --git a/gson/src/main/java/com/google/gson/TreeTypeAdapter.java b/gson/src/main/java/com/google/gson/TreeTypeAdapter.java index a05c1fe0..ef090909 100644 --- a/gson/src/main/java/com/google/gson/TreeTypeAdapter.java +++ b/gson/src/main/java/com/google/gson/TreeTypeAdapter.java @@ -127,6 +127,7 @@ final class TreeTypeAdapter extends TypeAdapter { } @SuppressWarnings("unchecked") // guarded by typeToken.equals() call + @Override public TypeAdapter create(Gson gson, TypeToken type) { boolean matches = exactType != null ? exactType.equals(type) || matchRawType && exactType.getType() == type.getRawType() diff --git a/gson/src/main/java/com/google/gson/internal/bind/ArrayTypeAdapter.java b/gson/src/main/java/com/google/gson/internal/bind/ArrayTypeAdapter.java index 55d7e309..3fb7c056 100644 --- a/gson/src/main/java/com/google/gson/internal/bind/ArrayTypeAdapter.java +++ b/gson/src/main/java/com/google/gson/internal/bind/ArrayTypeAdapter.java @@ -38,7 +38,7 @@ import com.google.gson.stream.JsonWriter; public final class ArrayTypeAdapter extends TypeAdapter { public static final TypeAdapterFactory FACTORY = new TypeAdapterFactory() { @SuppressWarnings({"unchecked", "rawtypes"}) - public TypeAdapter create(Gson gson, TypeToken typeToken) { + @Override public TypeAdapter create(Gson gson, TypeToken typeToken) { Type type = typeToken.getType(); if (!(type instanceof GenericArrayType || type instanceof Class && ((Class) type).isArray())) { return null; @@ -60,7 +60,7 @@ public final class ArrayTypeAdapter extends TypeAdapter { this.componentType = componentType; } - public Object read(JsonReader in) throws IOException { + @Override public Object read(JsonReader in) throws IOException { if (in.peek() == JsonToken.NULL) { in.nextNull(); return null; diff --git a/gson/src/main/java/com/google/gson/internal/bind/CollectionTypeAdapterFactory.java b/gson/src/main/java/com/google/gson/internal/bind/CollectionTypeAdapterFactory.java index 0b95445a..1d57844a 100644 --- a/gson/src/main/java/com/google/gson/internal/bind/CollectionTypeAdapterFactory.java +++ b/gson/src/main/java/com/google/gson/internal/bind/CollectionTypeAdapterFactory.java @@ -40,6 +40,7 @@ public final class CollectionTypeAdapterFactory implements TypeAdapterFactory { this.constructorConstructor = constructorConstructor; } + @Override public TypeAdapter create(Gson gson, TypeToken typeToken) { Type type = typeToken.getType(); @@ -69,7 +70,7 @@ public final class CollectionTypeAdapterFactory implements TypeAdapterFactory { this.constructor = constructor; } - public Collection read(JsonReader in) throws IOException { + @Override public Collection read(JsonReader in) throws IOException { if (in.peek() == JsonToken.NULL) { in.nextNull(); return null; @@ -85,7 +86,7 @@ public final class CollectionTypeAdapterFactory implements TypeAdapterFactory { return collection; } - public void write(JsonWriter out, Collection collection) throws IOException { + @Override public void write(JsonWriter out, Collection collection) throws IOException { if (collection == null) { out.nullValue(); return; diff --git a/gson/src/main/java/com/google/gson/internal/bind/DateTypeAdapter.java b/gson/src/main/java/com/google/gson/internal/bind/DateTypeAdapter.java index f2571724..2e1d282b 100644 --- a/gson/src/main/java/com/google/gson/internal/bind/DateTypeAdapter.java +++ b/gson/src/main/java/com/google/gson/internal/bind/DateTypeAdapter.java @@ -41,7 +41,7 @@ import java.util.TimeZone; public final class DateTypeAdapter extends TypeAdapter { public static final TypeAdapterFactory FACTORY = new TypeAdapterFactory() { @SuppressWarnings("unchecked") // we use a runtime check to make sure the 'T's equal - public TypeAdapter create(Gson gson, TypeToken typeToken) { + @Override public TypeAdapter create(Gson gson, TypeToken typeToken) { return typeToken.getRawType() == Date.class ? (TypeAdapter) new DateTypeAdapter() : null; } }; diff --git a/gson/src/main/java/com/google/gson/internal/bind/JsonAdapterAnnotationTypeAdapterFactory.java b/gson/src/main/java/com/google/gson/internal/bind/JsonAdapterAnnotationTypeAdapterFactory.java index 7e0be28f..77554e22 100644 --- a/gson/src/main/java/com/google/gson/internal/bind/JsonAdapterAnnotationTypeAdapterFactory.java +++ b/gson/src/main/java/com/google/gson/internal/bind/JsonAdapterAnnotationTypeAdapterFactory.java @@ -38,6 +38,7 @@ public final class JsonAdapterAnnotationTypeAdapterFactory implements TypeAdapte } @SuppressWarnings("unchecked") + @Override public TypeAdapter create(Gson gson, TypeToken targetType) { JsonAdapter annotation = targetType.getRawType().getAnnotation(JsonAdapter.class); if (annotation == null) { diff --git a/gson/src/main/java/com/google/gson/internal/bind/MapTypeAdapterFactory.java b/gson/src/main/java/com/google/gson/internal/bind/MapTypeAdapterFactory.java index c3c616c4..9c82a396 100644 --- a/gson/src/main/java/com/google/gson/internal/bind/MapTypeAdapterFactory.java +++ b/gson/src/main/java/com/google/gson/internal/bind/MapTypeAdapterFactory.java @@ -112,7 +112,7 @@ public final class MapTypeAdapterFactory implements TypeAdapterFactory { this.complexMapKeySerialization = complexMapKeySerialization; } - public TypeAdapter create(Gson gson, TypeToken typeToken) { + @Override public TypeAdapter create(Gson gson, TypeToken typeToken) { Type type = typeToken.getType(); Class rawType = typeToken.getRawType(); @@ -157,7 +157,7 @@ public final class MapTypeAdapterFactory implements TypeAdapterFactory { this.constructor = constructor; } - public Map read(JsonReader in) throws IOException { + @Override public Map read(JsonReader in) throws IOException { JsonToken peek = in.peek(); if (peek == JsonToken.NULL) { in.nextNull(); @@ -195,7 +195,7 @@ public final class MapTypeAdapterFactory implements TypeAdapterFactory { return map; } - public void write(JsonWriter out, Map map) throws IOException { + @Override public void write(JsonWriter out, Map map) throws IOException { if (map == null) { out.nullValue(); return; diff --git a/gson/src/main/java/com/google/gson/internal/bind/ObjectTypeAdapter.java b/gson/src/main/java/com/google/gson/internal/bind/ObjectTypeAdapter.java index 235d2b38..12889933 100644 --- a/gson/src/main/java/com/google/gson/internal/bind/ObjectTypeAdapter.java +++ b/gson/src/main/java/com/google/gson/internal/bind/ObjectTypeAdapter.java @@ -37,7 +37,7 @@ import java.util.Map; public final class ObjectTypeAdapter extends TypeAdapter { public static final TypeAdapterFactory FACTORY = new TypeAdapterFactory() { @SuppressWarnings("unchecked") - public TypeAdapter create(Gson gson, TypeToken type) { + @Override public TypeAdapter create(Gson gson, TypeToken type) { if (type.getRawType() == Object.class) { return (TypeAdapter) new ObjectTypeAdapter(gson); } diff --git a/gson/src/main/java/com/google/gson/internal/bind/ReflectiveTypeAdapterFactory.java b/gson/src/main/java/com/google/gson/internal/bind/ReflectiveTypeAdapterFactory.java index 3957c369..b954b017 100644 --- a/gson/src/main/java/com/google/gson/internal/bind/ReflectiveTypeAdapterFactory.java +++ b/gson/src/main/java/com/google/gson/internal/bind/ReflectiveTypeAdapterFactory.java @@ -86,7 +86,7 @@ public final class ReflectiveTypeAdapterFactory implements TypeAdapterFactory { return fieldNames; } - public TypeAdapter create(Gson gson, final TypeToken type) { + @Override public TypeAdapter create(Gson gson, final TypeToken type) { Class raw = type.getRawType(); if (!Object.class.isAssignableFrom(raw)) { @@ -119,7 +119,7 @@ public final class ReflectiveTypeAdapterFactory implements TypeAdapterFactory { field.set(value, fieldValue); } } - public boolean writeField(Object value) throws IOException, IllegalAccessException { + @Override public boolean writeField(Object value) throws IOException, IllegalAccessException { if (!serialized) return false; Object fieldValue = field.get(value); return fieldValue != value; // avoid recursion for example for Throwable.cause diff --git a/gson/src/main/java/com/google/gson/internal/bind/SqlDateTypeAdapter.java b/gson/src/main/java/com/google/gson/internal/bind/SqlDateTypeAdapter.java index 5ecc2e96..5ec244f2 100644 --- a/gson/src/main/java/com/google/gson/internal/bind/SqlDateTypeAdapter.java +++ b/gson/src/main/java/com/google/gson/internal/bind/SqlDateTypeAdapter.java @@ -38,7 +38,7 @@ import java.text.SimpleDateFormat; public final class SqlDateTypeAdapter extends TypeAdapter { public static final TypeAdapterFactory FACTORY = new TypeAdapterFactory() { @SuppressWarnings("unchecked") // we use a runtime check to make sure the 'T's equal - public TypeAdapter create(Gson gson, TypeToken typeToken) { + @Override public TypeAdapter create(Gson gson, TypeToken typeToken) { return typeToken.getRawType() == java.sql.Date.class ? (TypeAdapter) new SqlDateTypeAdapter() : null; } diff --git a/gson/src/main/java/com/google/gson/internal/bind/TimeTypeAdapter.java b/gson/src/main/java/com/google/gson/internal/bind/TimeTypeAdapter.java index bbbb4d97..55d4b2f6 100644 --- a/gson/src/main/java/com/google/gson/internal/bind/TimeTypeAdapter.java +++ b/gson/src/main/java/com/google/gson/internal/bind/TimeTypeAdapter.java @@ -40,7 +40,7 @@ import java.util.Date; public final class TimeTypeAdapter extends TypeAdapter