diff --git a/annotations/src/main/java/com/mapbox/annotation/module/MapboxModuleType.kt b/annotations/src/main/java/com/mapbox/annotation/module/MapboxModuleType.kt index 5d98ee9..8146dd8 100644 --- a/annotations/src/main/java/com/mapbox/annotation/module/MapboxModuleType.kt +++ b/annotations/src/main/java/com/mapbox/annotation/module/MapboxModuleType.kt @@ -50,20 +50,10 @@ enum class MapboxModuleType( /* ----- NAVIGATION MODULES ----- */ /** - * Main router used by the Navigation SDK. The default implementation combines [NavigationOffboardRouter] and [NavigationOnboardRouter] to provide the best available route. + * Main router used by the Navigation SDK. */ NavigationRouter("Router", "com.mapbox.navigation.base.route", "Router"), - /** - * If [NavigationRouter] is used, this provides the online routing capabilities. - */ - NavigationOffboardRouter("OffboardRouter", "com.mapbox.navigation.base.route", "Router"), - - /** - * If [NavigationRouter] is used, this provides the offline routing capabilities. - */ - NavigationOnboardRouter("OnboardRouter", "com.mapbox.navigation.base.route", "Router"), - /** * Foreground service notification displayed when navigation's trip session is started. */ diff --git a/build.gradle.kts b/build.gradle.kts index d37ba67..c8e6cc9 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -18,5 +18,19 @@ allprojects { repositories { google() jcenter() + maven { + authentication { + create("basic") + } + url = uri("https://api.mapbox.com/downloads/v2/releases/maven") + credentials { + username = "mapbox" + password = if (project.hasProperty("SDK_REGISTRY_TOKEN")) { + project.property("SDK_REGISTRY_TOKEN") as String + } else { + System.getenv("SDK_REGISTRY_TOKEN") + } ?: throw IllegalArgumentException("SDK Registry key is not specified") + } + } } } \ No newline at end of file diff --git a/buildSrc/src/main/kotlin/Project.kt b/buildSrc/src/main/kotlin/Project.kt index a21f3bf..018573b 100644 --- a/buildSrc/src/main/kotlin/Project.kt +++ b/buildSrc/src/main/kotlin/Project.kt @@ -38,7 +38,7 @@ private object Versions { const val artifactory = "4.9.3" const val mockk = "1.9.3" const val junit = "1.1.1" - const val navigationBase = "1.0.0-beta.1" + const val navigationBase = "1.0.0-rc.6" } object ArtifactSettings { diff --git a/examples/src/main/java/com/mapbox/common/examples/MyLogger.kt b/examples/src/main/java/com/mapbox/common/examples/MyLogger.kt index 7c38453..d9fae04 100644 --- a/examples/src/main/java/com/mapbox/common/examples/MyLogger.kt +++ b/examples/src/main/java/com/mapbox/common/examples/MyLogger.kt @@ -2,30 +2,30 @@ package com.mapbox.common.examples import com.mapbox.annotation.module.MapboxModule import com.mapbox.annotation.module.MapboxModuleType -import com.mapbox.navigation.base.logger.Logger -import com.mapbox.navigation.base.logger.model.Message -import com.mapbox.navigation.base.logger.model.Tag -import com.mapbox.navigation.base.trip.TripNotification +import com.mapbox.base.common.logger.Logger +import com.mapbox.base.common.logger.model.Message +import com.mapbox.base.common.logger.model.Tag +import com.mapbox.navigation.base.trip.notification.TripNotification @MapboxModule(MapboxModuleType.CommonLogger) class MyLogger(notification: TripNotification) : Logger { - override fun d(tag: Tag?, msg: Message, tr: Throwable?) { - TODO("not implemented") + override fun v(tag: Tag?, msg: Message, tr: Throwable?) { + TODO("Not yet implemented") } - override fun e(tag: Tag?, msg: Message, tr: Throwable?) { - TODO("not implemented") + override fun d(tag: Tag?, msg: Message, tr: Throwable?) { + TODO("Not yet implemented") } override fun i(tag: Tag?, msg: Message, tr: Throwable?) { - TODO("not implemented") + TODO("Not yet implemented") } - override fun v(tag: Tag?, msg: Message, tr: Throwable?) { - TODO("not implemented") + override fun w(tag: Tag?, msg: Message, tr: Throwable?) { + TODO("Not yet implemented") } - override fun w(tag: Tag?, msg: Message, tr: Throwable?) { - TODO("not implemented") + override fun e(tag: Tag?, msg: Message, tr: Throwable?) { + TODO("Not yet implemented") } } \ No newline at end of file diff --git a/examples/src/main/java/com/mapbox/common/examples/MyMapTelemetry.kt b/examples/src/main/java/com/mapbox/common/examples/MyMapTelemetry.kt new file mode 100644 index 0000000..2416144 --- /dev/null +++ b/examples/src/main/java/com/mapbox/common/examples/MyMapTelemetry.kt @@ -0,0 +1,8 @@ +package com.mapbox.common.examples + +import com.mapbox.annotation.module.MapboxModule +import com.mapbox.annotation.module.MapboxModuleType +import com.mapbox.maps.module.MapTelemetry + +@MapboxModule(MapboxModuleType.MapTelemetry, enableConfiguration = true) +class MyMapTelemetry : MapTelemetry \ No newline at end of file diff --git a/examples/src/main/java/com/mapbox/common/examples/MyOffboardRouter.kt b/examples/src/main/java/com/mapbox/common/examples/MyOffboardRouter.kt deleted file mode 100644 index 2208380..0000000 --- a/examples/src/main/java/com/mapbox/common/examples/MyOffboardRouter.kt +++ /dev/null @@ -1,18 +0,0 @@ -package com.mapbox.common.examples - -import android.content.Context -import com.mapbox.annotation.module.MapboxModule -import com.mapbox.annotation.module.MapboxModuleType -import com.mapbox.api.directions.v5.models.RouteOptions -import com.mapbox.navigation.base.route.Router - -@MapboxModule(MapboxModuleType.NavigationOffboardRouter) -class MyOffboardRouter(context: Context) : Router { - override fun cancel() { - // not implemented - } - - override fun getRoute(routeOptions: RouteOptions, callback: Router.Callback) { - // not implemented - } -} \ No newline at end of file diff --git a/examples/src/main/java/com/mapbox/common/examples/MyOnboardRouter.kt b/examples/src/main/java/com/mapbox/common/examples/MyOnboardRouter.kt deleted file mode 100644 index 74c34be..0000000 --- a/examples/src/main/java/com/mapbox/common/examples/MyOnboardRouter.kt +++ /dev/null @@ -1,18 +0,0 @@ -package com.mapbox.common.examples - -import com.mapbox.annotation.module.MapboxModule -import com.mapbox.annotation.module.MapboxModuleType -import com.mapbox.api.directions.v5.models.RouteOptions -import com.mapbox.navigation.base.logger.Logger -import com.mapbox.navigation.base.route.Router - -@MapboxModule(MapboxModuleType.NavigationOnboardRouter, enableConfiguration = true) -class MyOnboardRouter(logger: Logger) : Router { - override fun cancel() { - // not implemented - } - - override fun getRoute(routeOptions: RouteOptions, callback: Router.Callback) { - // not implemented - } -} \ No newline at end of file diff --git a/examples/src/main/java/com/mapbox/common/examples/MyRouter.kt b/examples/src/main/java/com/mapbox/common/examples/MyRouter.kt index 01a4d3d..29b5a0c 100644 --- a/examples/src/main/java/com/mapbox/common/examples/MyRouter.kt +++ b/examples/src/main/java/com/mapbox/common/examples/MyRouter.kt @@ -2,11 +2,14 @@ package com.mapbox.common.examples import com.mapbox.annotation.module.MapboxModule import com.mapbox.annotation.module.MapboxModuleType +import com.mapbox.api.directions.v5.models.DirectionsRoute import com.mapbox.api.directions.v5.models.RouteOptions +import com.mapbox.common.module.LibraryLoader +import com.mapbox.navigation.base.route.RouteRefreshCallback import com.mapbox.navigation.base.route.Router @MapboxModule(MapboxModuleType.NavigationRouter) -class MyRouter(offboardRouter: Router) : Router { +class MyRouter(libraryLoader: LibraryLoader) : Router { override fun cancel() { // not implemented } @@ -14,4 +17,12 @@ class MyRouter(offboardRouter: Router) : Router { override fun getRoute(routeOptions: RouteOptions, callback: Router.Callback) { // not implemented } + + override fun getRouteRefresh(route: DirectionsRoute, legIndex: Int, callback: RouteRefreshCallback) { + // not implemented + } + + override fun shutdown() { + // not implemented + } } \ No newline at end of file diff --git a/examples/src/main/java/com/mapbox/maps/module/MapTelemetry.kt b/examples/src/main/java/com/mapbox/maps/module/MapTelemetry.kt new file mode 100644 index 0000000..b25cc2a --- /dev/null +++ b/examples/src/main/java/com/mapbox/maps/module/MapTelemetry.kt @@ -0,0 +1,6 @@ +package com.mapbox.maps.module + +/** + * Fake interface that matches the package for testing purposes + */ +interface MapTelemetry \ No newline at end of file diff --git a/examples/src/test/java/com/mapbox/common/examples/ModuleProviderTest.kt b/examples/src/test/java/com/mapbox/common/examples/ModuleProviderTest.kt index 4ecb495..3fc37ad 100644 --- a/examples/src/test/java/com/mapbox/common/examples/ModuleProviderTest.kt +++ b/examples/src/test/java/com/mapbox/common/examples/ModuleProviderTest.kt @@ -1,15 +1,15 @@ package com.mapbox.common.examples -import android.content.Context import com.mapbox.annotation.module.MapboxModuleType +import com.mapbox.base.common.logger.Logger import com.mapbox.common.module.LibraryLoader import com.mapbox.common.module.provider.MapboxInvalidModuleException import com.mapbox.common.module.provider.MapboxModuleProvider import com.mapbox.common.module.provider.ModuleProviderArgument -import com.mapbox.module.Mapbox_OnboardRouterModuleConfiguration -import com.mapbox.navigation.base.logger.Logger +import com.mapbox.maps.module.MapTelemetry +import com.mapbox.module.Mapbox_MapTelemetryModuleConfiguration import com.mapbox.navigation.base.route.Router -import com.mapbox.navigation.base.trip.TripNotification +import com.mapbox.navigation.base.trip.notification.TripNotification import io.mockk.mockk import org.hamcrest.core.IsEqual import org.junit.Assert.assertNotNull @@ -30,8 +30,8 @@ class ModuleProviderTest { @Test fun normal_dependencies() { - val offboardRouter: Router = MapboxModuleProvider.createModule(MapboxModuleType.NavigationOffboardRouter, ::paramsProvider) - assertNotNull(offboardRouter) + val logger: Logger = MapboxModuleProvider.createModule(MapboxModuleType.CommonLogger, ::paramsProvider2) + assertNotNull(logger) } @Test @@ -42,11 +42,11 @@ class ModuleProviderTest { @Test fun generate_configuration() { - Mapbox_OnboardRouterModuleConfiguration.moduleProvider = object : Mapbox_OnboardRouterModuleConfiguration.ModuleProvider { - override fun createOnboardRouter(): Router = MyOnboardRouter(mockk()) + Mapbox_MapTelemetryModuleConfiguration.moduleProvider = object : Mapbox_MapTelemetryModuleConfiguration.ModuleProvider { + override fun createMapTelemetry(): MapTelemetry = MyMapTelemetry() } - val onboardRouter: Router = MapboxModuleProvider.createModule(MapboxModuleType.NavigationOnboardRouter, ::paramsProvider) - assertNotNull(onboardRouter) + val mapTelemetry: MapTelemetry = MapboxModuleProvider.createModule(MapboxModuleType.MapTelemetry, ::paramsProvider) + assertNotNull(mapTelemetry) } @Test @@ -66,17 +66,22 @@ class ModuleProviderTest { MapboxModuleType.CommonLibraryLoader -> arrayOf() MapboxModuleType.CommonHttpClient -> TODO("not implemented") MapboxModuleType.CommonLogger -> arrayOf( - ModuleProviderArgument(Router::class.java, MapboxModuleProvider.createModule(MapboxModuleType.NavigationTripNotification, ::paramsProvider)) + ModuleProviderArgument(TripNotification::class.java, MapboxModuleProvider.createModule(MapboxModuleType.NavigationTripNotification, ::paramsProvider)) ) MapboxModuleType.NavigationRouter -> arrayOf( - ModuleProviderArgument(Router::class.java, MapboxModuleProvider.createModule(MapboxModuleType.NavigationOffboardRouter, ::paramsProvider)) + ModuleProviderArgument(LibraryLoader::class.java, MapboxModuleProvider.createModule(MapboxModuleType.CommonLibraryLoader, ::paramsProvider)) ) - MapboxModuleType.NavigationOffboardRouter -> arrayOf( - ModuleProviderArgument(Context::class.java, mockk()) + MapboxModuleType.NavigationTripNotification -> arrayOf() + MapboxModuleType.MapTelemetry -> arrayOf() + } + } + + private fun paramsProvider2(type: MapboxModuleType): Array { + return when (type) { + MapboxModuleType.CommonLogger -> arrayOf( + ModuleProviderArgument(TripNotification::class.java, mockk()) ) - MapboxModuleType.NavigationOnboardRouter -> arrayOf() - MapboxModuleType.NavigationTripNotification -> TODO("not implemented") - MapboxModuleType.MapTelemetry -> TODO("not implemented") + else -> throw RuntimeException() } } } \ No newline at end of file