commit 458702be95fa8558bd31e4c32d1235521137d1df Author: Fabio Mazza Date: Fri Dec 15 13:58:54 2023 +0100 Wait more time for GTFS positions request diff --git a/app/src/main/java/it/reyboz/bustorino/backend/gtfs/GtfsRtPositionsRequest.kt b/app/src/main/java/it/reyboz/bustorino/backend/gtfs/GtfsRtPositionsRequest.kt index 5a054e9..b524861 100644 --- a/app/src/main/java/it/reyboz/bustorino/backend/gtfs/GtfsRtPositionsRequest.kt +++ b/app/src/main/java/it/reyboz/bustorino/backend/gtfs/GtfsRtPositionsRequest.kt @@ -28,6 +28,7 @@ class GtfsRtPositionsRequest( errorListener: Response.ErrorListener?, val listener: RequestListener) : Request>(Method.GET, URL_POSITION, errorListener) { + override fun parseNetworkResponse(response: NetworkResponse?): Response> { if (response == null){ return Response.error(VolleyError("Null response")) diff --git a/app/src/main/java/it/reyboz/bustorino/viewmodels/LivePositionsViewModel.kt b/app/src/main/java/it/reyboz/bustorino/viewmodels/LivePositionsViewModel.kt index 26ab1ca..6ce983d 100644 --- a/app/src/main/java/it/reyboz/bustorino/viewmodels/LivePositionsViewModel.kt +++ b/app/src/main/java/it/reyboz/bustorino/viewmodels/LivePositionsViewModel.kt @@ -20,6 +20,7 @@ package it.reyboz.bustorino.viewmodels import android.app.Application import android.util.Log import androidx.lifecycle.* +import com.android.volley.DefaultRetryPolicy import com.android.volley.Response import it.reyboz.bustorino.backend.NetworkVolleyManager import it.reyboz.bustorino.backend.gtfs.GtfsRtPositionsRequest @@ -167,8 +168,6 @@ class LivePositionsViewModel(application: Application): AndroidViewModel(applica } } //Gtfs Real time - - private val gtfsPositionsReqListener = object: GtfsRtPositionsRequest.Companion.RequestListener{ override fun onResponse(response: ArrayList?) { Log.i(DEBUG_TI,"Got response from the GTFS RT server") @@ -189,13 +188,16 @@ class LivePositionsViewModel(application: Application): AndroidViewModel(applica } private val positionRequestErrorListener = Response.ErrorListener { - Log.e(DEBUG_TI, "Could not download the update, error:\n"+it.stackTrace) + Log.e(DEBUG_TI, "Could not download the update", it) gtfsRtRequestRunning.postValue(false) } fun requestGTFSUpdates(){ if(gtfsRtRequestRunning.value == null || !gtfsRtRequestRunning.value!!) { val request = GtfsRtPositionsRequest(positionRequestErrorListener, gtfsPositionsReqListener) + request.setRetryPolicy( + DefaultRetryPolicy(1000,10,DefaultRetryPolicy.DEFAULT_BACKOFF_MULT) + ) netVolleyManager.requestQueue.add(request) Log.i(DEBUG_TI, "Requested GTFS realtime position updates") gtfsRtRequestRunning.value = true @@ -211,6 +213,6 @@ class LivePositionsViewModel(application: Application): AndroidViewModel(applica } companion object{ - private const val DEBUG_TI = "BusTO-MQTTLiveData" + private const val DEBUG_TI = "BusTO-LivePosViewModel" } } \ No newline at end of file