Skip to content

Commit

Permalink
optimizes road objects creation by re-using the parsing that was alre…
Browse files Browse the repository at this point in the history
…ady done
  • Loading branch information
LukasPaczos committed Sep 23, 2022
1 parent 014a0b6 commit 3a65560
Show file tree
Hide file tree
Showing 2 changed files with 3 additions and 12 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,7 @@ import com.mapbox.api.directions.v5.models.BannerInstructions
import com.mapbox.api.directions.v5.models.VoiceInstructions
import com.mapbox.navigation.base.ExperimentalMapboxNavigationAPI
import com.mapbox.navigation.base.internal.factory.RoadFactory
import com.mapbox.navigation.base.internal.factory.RoadObjectFactory.toUpcomingRoadObjects
import com.mapbox.navigation.base.internal.factory.TripNotificationStateFactory.buildTripNotificationState
import com.mapbox.navigation.base.internal.route.nativeRoute
import com.mapbox.navigation.base.route.NavigationRoute
import com.mapbox.navigation.base.trip.model.RouteLegProgress
import com.mapbox.navigation.base.trip.model.RouteProgress
Expand Down Expand Up @@ -100,8 +98,7 @@ internal class MapboxTripSession(
val primaryRoute = routes.first()
navigator.refreshRoute(primaryRoute).onValue {
this@MapboxTripSession.primaryRoute = routes.first()
roadObjects = primaryRoute.nativeRoute().routeInfo.alerts
.toUpcomingRoadObjects()
roadObjects = primaryRoute.upcomingRoadObjects
}.fold({ NativeSetRouteError(it) }, { NativeSetRouteValue(it) }).also {
logD(
"routes update (route IDs: ${routes.map { it.id }}) - refresh finished",
Expand Down Expand Up @@ -141,8 +138,7 @@ internal class MapboxTripSession(
).onValue {
updateLegIndexJob?.cancel()
this@MapboxTripSession.primaryRoute = newPrimaryRoute
roadObjects = newPrimaryRoute?.nativeRoute()?.routeInfo?.alerts
?.toUpcomingRoadObjects() ?: emptyList()
roadObjects = newPrimaryRoute?.upcomingRoadObjects ?: emptyList()
isOffRoute = false
invalidateLatestInstructions()
routeProgress = null
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,6 @@ import com.mapbox.api.directions.v5.models.VoiceInstructions
import com.mapbox.bindgen.ExpectedFactory
import com.mapbox.navigation.base.internal.CurrentIndicesFactory
import com.mapbox.navigation.base.internal.factory.RoadObjectFactory
import com.mapbox.navigation.base.internal.factory.RoadObjectFactory.toUpcomingRoadObjects
import com.mapbox.navigation.base.internal.route.nativeRoute
import com.mapbox.navigation.base.options.NavigationOptions
import com.mapbox.navigation.base.route.NavigationRoute
import com.mapbox.navigation.base.trip.model.RouteProgress
Expand Down Expand Up @@ -1489,10 +1487,7 @@ class MapboxTripSessionTest {
private fun mockNavigationRoute(
roadObjects: List<UpcomingRoadObject> = listOf(mockk())
): NavigationRoute = mockk(relaxed = true) {
val navigationRoute = this
every {
navigationRoute.nativeRoute().routeInfo.alerts.toUpcomingRoadObjects()
} returns roadObjects
every { upcomingRoadObjects } returns roadObjects
}

fun createSetRouteError(
Expand Down

0 comments on commit 3a65560

Please sign in to comment.