Skip to content

Commit 3b5d8b4

Browse files
authored
fix: set gson's objectToNumber policy to DOUBLE (#155)
When the java core was recently upgraded to gson version 2.8.9, that included a change to set gson's "objectToNumber" policy to be "LAZILY_PARSED_NUMBER", but that was incorrect. It should be set to "DOUBLE". This commit makes this change, which means that if a JSON string is unmarshalled into a generic Map<String, Object>, then any JSON "number" values that are encountered will now be unmarshalled into a Double instead of a LazilyParsedNumber. This change restores the behavior seen in gson versions prior to 2.8.9 (and java core versions prior to 9.13.4).
1 parent 45498ae commit 3b5d8b4

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

src/main/java/com/ibm/cloud/sdk/core/util/GsonSingleton.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ private GsonSingleton() {
4747
*/
4848
private static Gson createGson(boolean prettyPrint, boolean serializeNulls) {
4949
GsonBuilder builder = new GsonBuilder()
50-
.setObjectToNumberStrategy(ToNumberPolicy.LAZILY_PARSED_NUMBER)
50+
.setObjectToNumberStrategy(ToNumberPolicy.DOUBLE)
5151
.setNumberToNumberStrategy(ToNumberPolicy.LAZILY_PARSED_NUMBER);
5252

5353
registerTypeAdapters(builder);

0 commit comments

Comments
 (0)