From 8c6b19a0643f86240da2f25320b93c270ef9cdc5 Mon Sep 17 00:00:00 2001 From: GiuseppeS Date: Thu, 21 Sep 2023 10:36:37 +0200 Subject: [PATCH 1/3] Utilizzato lo stesso Gson Builder per Retrofit e altro --- .../core/rest/RESTBuilder.java | 18 ++---------- .../rest/consumers/EntityRESTConsumer.java | 3 +- .../core/utility/UtilityGson.java | 28 +++++++++++++++++++ 3 files changed, 32 insertions(+), 17 deletions(-) create mode 100644 app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityGson.java diff --git a/app/src/main/java/it/integry/integrywmsnative/core/rest/RESTBuilder.java b/app/src/main/java/it/integry/integrywmsnative/core/rest/RESTBuilder.java index 87245d05..cbc9a42d 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/rest/RESTBuilder.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/rest/RESTBuilder.java @@ -1,24 +1,17 @@ package it.integry.integrywmsnative.core.rest; import com.google.gson.Gson; -import com.google.gson.GsonBuilder; -import java.lang.reflect.Modifier; import java.security.KeyManagementException; import java.security.NoSuchAlgorithmException; -import java.time.LocalDate; -import java.time.LocalDateTime; import java.util.concurrent.TimeUnit; import javax.net.ssl.SSLContext; import javax.net.ssl.TrustManager; import javax.net.ssl.X509TrustManager; -import it.integry.integrywmsnative.core.rest.deserializer.LocalDateDeserializer; -import it.integry.integrywmsnative.core.rest.deserializer.LocalDateTimeDeserializer; -import it.integry.integrywmsnative.core.rest.serializer.LocalDateSerializer; -import it.integry.integrywmsnative.core.rest.serializer.LocalDateTimeSerializer; import it.integry.integrywmsnative.core.settings.SettingsManager; +import it.integry.integrywmsnative.core.utility.UtilityGson; import okhttp3.OkHttpClient; import retrofit2.Retrofit; import retrofit2.converter.gson.GsonConverterFactory; @@ -66,14 +59,7 @@ public class RESTBuilder { String endpoint = protocol + "://" + host + (port > 0 ? ":" + port : "") + "/" + (addEmsApi ? "ems-api/" : ""); - Gson gson = new GsonBuilder() - .setDateFormat("dd/MM/yyyy HH:mm:ss") - .excludeFieldsWithModifiers(Modifier.TRANSIENT) - .registerTypeAdapter(LocalDate.class, new LocalDateDeserializer()) - .registerTypeAdapter(LocalDate.class, new LocalDateSerializer()) - .registerTypeAdapter(LocalDateTime.class, new LocalDateTimeDeserializer()) - .registerTypeAdapter(LocalDateTime.class, new LocalDateTimeSerializer()) - .create(); + Gson gson = UtilityGson.createObject(); Retrofit retrofit = new Retrofit.Builder().addConverterFactory(GsonConverterFactory.create(gson)).baseUrl(endpoint).client(client).build(); diff --git a/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/EntityRESTConsumer.java b/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/EntityRESTConsumer.java index 832f293d..15a94255 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/EntityRESTConsumer.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/EntityRESTConsumer.java @@ -15,6 +15,7 @@ import it.integry.integrywmsnative.core.model.EntityBase; import it.integry.integrywmsnative.core.rest.RESTBuilder; import it.integry.integrywmsnative.core.rest.model.EsitoType; import it.integry.integrywmsnative.core.rest.model.ServiceRESTResponse; +import it.integry.integrywmsnative.core.utility.UtilityGson; import retrofit2.Call; import retrofit2.Callback; import retrofit2.Response; @@ -83,7 +84,7 @@ public class EntityRESTConsumer extends _BaseRESTConsumer { if (response.body() != null) { ArrayList responseList = new ArrayList<>(); - Gson gson = new Gson(); + Gson gson = UtilityGson.createObject(); // Type typeOfObjectsList = new TypeToken() {}.getType(); for (ServiceRESTResponse jsonSingleObject : response.body()) { diff --git a/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityGson.java b/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityGson.java new file mode 100644 index 00000000..699260d8 --- /dev/null +++ b/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityGson.java @@ -0,0 +1,28 @@ +package it.integry.integrywmsnative.core.utility; + +import com.google.gson.Gson; +import com.google.gson.GsonBuilder; + +import java.lang.reflect.Modifier; +import java.time.LocalDate; +import java.time.LocalDateTime; + +import it.integry.integrywmsnative.core.rest.deserializer.LocalDateDeserializer; +import it.integry.integrywmsnative.core.rest.deserializer.LocalDateTimeDeserializer; +import it.integry.integrywmsnative.core.rest.serializer.LocalDateSerializer; +import it.integry.integrywmsnative.core.rest.serializer.LocalDateTimeSerializer; + +public class UtilityGson { + + public static Gson createObject() { + return new GsonBuilder() + .setDateFormat("dd/MM/yyyy HH:mm:ss") + .excludeFieldsWithModifiers(Modifier.TRANSIENT) + .registerTypeAdapter(LocalDate.class, new LocalDateDeserializer()) + .registerTypeAdapter(LocalDate.class, new LocalDateSerializer()) + .registerTypeAdapter(LocalDateTime.class, new LocalDateTimeDeserializer()) + .registerTypeAdapter(LocalDateTime.class, new LocalDateTimeSerializer()) + .create(); + } + +} From be8739c167e60137139e593dc284066764511fca Mon Sep 17 00:00:00 2001 From: GiuseppeS Date: Thu, 21 Sep 2023 10:36:37 +0200 Subject: [PATCH 2/3] Utilizzato lo stesso Gson Builder per Retrofit e altro --- .idea/deploymentTargetDropDown.xml | 17 +++++++++++ .../core/rest/RESTBuilder.java | 18 ++---------- .../rest/consumers/EntityRESTConsumer.java | 3 +- .../core/utility/UtilityGson.java | 28 +++++++++++++++++++ 4 files changed, 49 insertions(+), 17 deletions(-) create mode 100644 .idea/deploymentTargetDropDown.xml create mode 100644 app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityGson.java diff --git a/.idea/deploymentTargetDropDown.xml b/.idea/deploymentTargetDropDown.xml new file mode 100644 index 00000000..f0561034 --- /dev/null +++ b/.idea/deploymentTargetDropDown.xml @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/java/it/integry/integrywmsnative/core/rest/RESTBuilder.java b/app/src/main/java/it/integry/integrywmsnative/core/rest/RESTBuilder.java index 87245d05..cbc9a42d 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/rest/RESTBuilder.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/rest/RESTBuilder.java @@ -1,24 +1,17 @@ package it.integry.integrywmsnative.core.rest; import com.google.gson.Gson; -import com.google.gson.GsonBuilder; -import java.lang.reflect.Modifier; import java.security.KeyManagementException; import java.security.NoSuchAlgorithmException; -import java.time.LocalDate; -import java.time.LocalDateTime; import java.util.concurrent.TimeUnit; import javax.net.ssl.SSLContext; import javax.net.ssl.TrustManager; import javax.net.ssl.X509TrustManager; -import it.integry.integrywmsnative.core.rest.deserializer.LocalDateDeserializer; -import it.integry.integrywmsnative.core.rest.deserializer.LocalDateTimeDeserializer; -import it.integry.integrywmsnative.core.rest.serializer.LocalDateSerializer; -import it.integry.integrywmsnative.core.rest.serializer.LocalDateTimeSerializer; import it.integry.integrywmsnative.core.settings.SettingsManager; +import it.integry.integrywmsnative.core.utility.UtilityGson; import okhttp3.OkHttpClient; import retrofit2.Retrofit; import retrofit2.converter.gson.GsonConverterFactory; @@ -66,14 +59,7 @@ public class RESTBuilder { String endpoint = protocol + "://" + host + (port > 0 ? ":" + port : "") + "/" + (addEmsApi ? "ems-api/" : ""); - Gson gson = new GsonBuilder() - .setDateFormat("dd/MM/yyyy HH:mm:ss") - .excludeFieldsWithModifiers(Modifier.TRANSIENT) - .registerTypeAdapter(LocalDate.class, new LocalDateDeserializer()) - .registerTypeAdapter(LocalDate.class, new LocalDateSerializer()) - .registerTypeAdapter(LocalDateTime.class, new LocalDateTimeDeserializer()) - .registerTypeAdapter(LocalDateTime.class, new LocalDateTimeSerializer()) - .create(); + Gson gson = UtilityGson.createObject(); Retrofit retrofit = new Retrofit.Builder().addConverterFactory(GsonConverterFactory.create(gson)).baseUrl(endpoint).client(client).build(); diff --git a/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/EntityRESTConsumer.java b/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/EntityRESTConsumer.java index 832f293d..15a94255 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/EntityRESTConsumer.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/EntityRESTConsumer.java @@ -15,6 +15,7 @@ import it.integry.integrywmsnative.core.model.EntityBase; import it.integry.integrywmsnative.core.rest.RESTBuilder; import it.integry.integrywmsnative.core.rest.model.EsitoType; import it.integry.integrywmsnative.core.rest.model.ServiceRESTResponse; +import it.integry.integrywmsnative.core.utility.UtilityGson; import retrofit2.Call; import retrofit2.Callback; import retrofit2.Response; @@ -83,7 +84,7 @@ public class EntityRESTConsumer extends _BaseRESTConsumer { if (response.body() != null) { ArrayList responseList = new ArrayList<>(); - Gson gson = new Gson(); + Gson gson = UtilityGson.createObject(); // Type typeOfObjectsList = new TypeToken() {}.getType(); for (ServiceRESTResponse jsonSingleObject : response.body()) { diff --git a/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityGson.java b/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityGson.java new file mode 100644 index 00000000..699260d8 --- /dev/null +++ b/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityGson.java @@ -0,0 +1,28 @@ +package it.integry.integrywmsnative.core.utility; + +import com.google.gson.Gson; +import com.google.gson.GsonBuilder; + +import java.lang.reflect.Modifier; +import java.time.LocalDate; +import java.time.LocalDateTime; + +import it.integry.integrywmsnative.core.rest.deserializer.LocalDateDeserializer; +import it.integry.integrywmsnative.core.rest.deserializer.LocalDateTimeDeserializer; +import it.integry.integrywmsnative.core.rest.serializer.LocalDateSerializer; +import it.integry.integrywmsnative.core.rest.serializer.LocalDateTimeSerializer; + +public class UtilityGson { + + public static Gson createObject() { + return new GsonBuilder() + .setDateFormat("dd/MM/yyyy HH:mm:ss") + .excludeFieldsWithModifiers(Modifier.TRANSIENT) + .registerTypeAdapter(LocalDate.class, new LocalDateDeserializer()) + .registerTypeAdapter(LocalDate.class, new LocalDateSerializer()) + .registerTypeAdapter(LocalDateTime.class, new LocalDateTimeDeserializer()) + .registerTypeAdapter(LocalDateTime.class, new LocalDateTimeSerializer()) + .create(); + } + +} From 3961721241cdae07ab10fd5b409e462d8f74d3ae Mon Sep 17 00:00:00 2001 From: GiuseppeS Date: Thu, 21 Sep 2023 10:37:40 +0200 Subject: [PATCH 3/3] -> v1.35.01 (392) --- app/build.gradle | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index ffae8061..54c5819e 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -10,8 +10,8 @@ apply plugin: 'com.google.gms.google-services' android { - def appVersionCode = 391 - def appVersionName = '1.35.00' + def appVersionCode = 392 + def appVersionName = '1.35.01' signingConfigs { release {