diff --git a/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityFirebase.java b/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityFirebase.java index 04024801..747a5a47 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityFirebase.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityFirebase.java @@ -13,8 +13,18 @@ public class UtilityFirebase { Trace newTrace = FirebasePerformance.getInstance().newTrace(traceName); newTrace.putAttribute("user_fullame", username); + newTrace.putAttribute("profile_db", SettingsManager.i().userSession.profileDB); return newTrace; } + + public static void stopPerformanceTrace(Trace traceToStop, boolean withError) { + if(withError) { + traceToStop.putAttribute("failed", "true"); + } + + traceToStop.stop(); + } + } diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/vendita/core/VenditaHelper.java b/app/src/main/java/it/integry/integrywmsnative/gest/vendita/core/VenditaHelper.java index 2e80691a..ac29c5c9 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/vendita/core/VenditaHelper.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/vendita/core/VenditaHelper.java @@ -4,6 +4,7 @@ import android.content.Context; import android.text.TextUtils; import android.util.Log; +import com.google.firebase.perf.metrics.Trace; import com.google.gson.reflect.TypeToken; import java.lang.reflect.Type; @@ -23,6 +24,7 @@ import it.integry.integrywmsnative.core.model.MtbColt; import it.integry.integrywmsnative.core.model.secondary.GestioneEnum; import it.integry.integrywmsnative.core.settings.SettingsManager; import it.integry.integrywmsnative.core.utility.UtilityDate; +import it.integry.integrywmsnative.core.utility.UtilityFirebase; import it.integry.integrywmsnative.core.utility.UtilityLogger; import it.integry.integrywmsnative.gest.vendita.dto.OrdineVenditaGroupedInevasoDTO; import it.integry.integrywmsnative.gest.vendita.dto.OrdineVenditaInevasoDTO; @@ -43,6 +45,9 @@ public class VenditaHelper { public void loadOrdini(final ILoadOrdiniCallback callback){ String codMdep = SettingsManager.i().userSession.depo.getCodMdep(); + Trace perfTrace = UtilityFirebase.getNewPerformanceTrace("_db_load_ords_v"); + perfTrace.start(); + OrdiniVenditaRESTConsumerService service = RESTBuilder.getService(OrdiniVenditaRESTConsumerService.class); service.listOrdiniInevasi(codMdep).enqueue(new Callback>>() { @Override @@ -52,16 +57,20 @@ public class VenditaHelper { if(response.body() != null) { if(response.body().getEsito() == EsitoType.OK) { + UtilityFirebase.stopPerformanceTrace(perfTrace, false); callback.onLoadSuccess(response.body().getDto()); } else { + UtilityFirebase.stopPerformanceTrace(perfTrace, true); Log.e("Vendita", response.body().getErrorMessage()); callback.onLoadFail(new Exception(response.body().getErrorMessage())); } } else { + UtilityFirebase.stopPerformanceTrace(perfTrace, true); Log.e("Vendita", response.message()); callback.onLoadFail(new Exception(response.message())); } } else { + UtilityFirebase.stopPerformanceTrace(perfTrace, true); Log.e("Vendita", "Status " + response.code() + ": " + response.message()); callback.onLoadFail(new Exception("Status " + response.code() + ": " + response.message())); } @@ -69,6 +78,7 @@ public class VenditaHelper { @Override public void onFailure(Call>> call, Throwable t) { + UtilityFirebase.stopPerformanceTrace(perfTrace, true); Log.e("Vendita", t.toString()); UtilityLogger.errorMe(new Exception(t)); callback.onLoadFail(new Exception(t)); @@ -85,6 +95,9 @@ public class VenditaHelper { OrdiniVenditaRESTConsumerService service = RESTBuilder.getService(OrdiniVenditaRESTConsumerService.class); + Trace perfTrace = UtilityFirebase.getNewPerformanceTrace("_db_load_pick_v"); + perfTrace.start(); + service.getPickingList(codMdep, dateCons, joinedBarcodes).enqueue(new Callback>>() { @Override public void onResponse(Call>> call, Response>> response) { @@ -92,16 +105,21 @@ public class VenditaHelper { if(response.body() != null) { if(response.body().getEsito() == EsitoType.OK) { + UtilityFirebase.stopPerformanceTrace(perfTrace, false); callback.onLoadSuccess(response.body().getDto()); + } else { Log.e("Vendita", response.body().getErrorMessage()); + UtilityFirebase.stopPerformanceTrace(perfTrace, true); callback.onLoadFail(new Exception(response.message())); } } else { Log.e("Vendita", response.message()); + UtilityFirebase.stopPerformanceTrace(perfTrace, true); callback.onLoadFail(new Exception(response.message())); } } else { + UtilityFirebase.stopPerformanceTrace(perfTrace, true); Log.e("Vendita", "Status " + response.code() + ": " + response.message()); callback.onLoadFail(new Exception("Status " + response.code() + ": " + response.message())); } @@ -109,6 +127,7 @@ public class VenditaHelper { @Override public void onFailure(Call>> call, Throwable t) { + UtilityFirebase.stopPerformanceTrace(perfTrace, true); Log.e("Vendita", t.toString()); UtilityLogger.errorMe(new Exception(t)); callback.onLoadFail(new Exception(t));