From 810dbc7411c7c862c3939d5131eeb0588a20090f Mon Sep 17 00:00:00 2001 From: Goooler Date: Fri, 10 Feb 2023 01:44:27 +0800 Subject: [PATCH 1/2] Remove ParamMap --- .../kotlin/io/goooler/demoapp/base/util/BaseExtensions.kt | 5 ----- .../main/kotlin/io/goooler/demoapp/main/api/MainCommonApi.kt | 3 +-- .../goooler/demoapp/main/repository/MainCommonRepository.kt | 3 +-- 3 files changed, 2 insertions(+), 9 deletions(-) diff --git a/base/src/main/kotlin/io/goooler/demoapp/base/util/BaseExtensions.kt b/base/src/main/kotlin/io/goooler/demoapp/base/util/BaseExtensions.kt index 5a124ffcb..0aa33a4e3 100644 --- a/base/src/main/kotlin/io/goooler/demoapp/base/util/BaseExtensions.kt +++ b/base/src/main/kotlin/io/goooler/demoapp/base/util/BaseExtensions.kt @@ -68,8 +68,6 @@ annotation class Sp @Dimension(unit = 3) annotation class Pt -typealias ParamMap = HashMap - // ---------------------Any-------------------------------// inline val randomUUID: String get() = UUID.randomUUID().toString() @@ -331,9 +329,6 @@ fun List.thirdOrNull(): T? { return if (size < 3) null else this[2] } -fun paramMapOf(vararg pairs: Pair): HashMap = - HashMap(pairs.size).apply { putAll(pairs) } - fun MutableMap.removeFirst(): Map.Entry { val iterator = iterator() val element = iterator.next() diff --git a/biz/main/src/main/kotlin/io/goooler/demoapp/main/api/MainCommonApi.kt b/biz/main/src/main/kotlin/io/goooler/demoapp/main/api/MainCommonApi.kt index d3910470d..01c98b0f9 100644 --- a/biz/main/src/main/kotlin/io/goooler/demoapp/main/api/MainCommonApi.kt +++ b/biz/main/src/main/kotlin/io/goooler/demoapp/main/api/MainCommonApi.kt @@ -1,6 +1,5 @@ package io.goooler.demoapp.main.api -import io.goooler.demoapp.base.util.ParamMap import io.goooler.demoapp.main.bean.MainRepoListBean import retrofit2.http.GET import retrofit2.http.Path @@ -11,6 +10,6 @@ interface MainCommonApi { @GET("users/{user}/repos") suspend fun getRepoList( @Path("user") user: String, - @QueryMap params: ParamMap, + @QueryMap params: Map, ): List } diff --git a/biz/main/src/main/kotlin/io/goooler/demoapp/main/repository/MainCommonRepository.kt b/biz/main/src/main/kotlin/io/goooler/demoapp/main/repository/MainCommonRepository.kt index 91b45ae6c..0fa271773 100644 --- a/biz/main/src/main/kotlin/io/goooler/demoapp/main/repository/MainCommonRepository.kt +++ b/biz/main/src/main/kotlin/io/goooler/demoapp/main/repository/MainCommonRepository.kt @@ -1,7 +1,6 @@ package io.goooler.demoapp.main.repository import androidx.annotation.IntRange -import io.goooler.demoapp.base.util.paramMapOf import io.goooler.demoapp.common.network.RetrofitHelper import io.goooler.demoapp.common.type.CommonConstants import io.goooler.demoapp.common.util.RoomHelper @@ -19,7 +18,7 @@ class MainCommonRepository { @IntRange(from = 1) page: Int = 1, @IntRange(from = 1) pageSize: Int = CommonConstants.DEFAULT_PAGE_SIZE, ): List { - val params = paramMapOf( + val params = mapOf( "page" to page, "per_page" to pageSize, ) From 0b5d147188731b06027a4c1a2b733db422987f3f Mon Sep 17 00:00:00 2001 From: Goooler Date: Fri, 10 Feb 2023 01:46:01 +0800 Subject: [PATCH 2/2] The power of @JvmSuppressWildcards https://chao2zhang.medium.com/jvmsuppresswildcards-the-secret-sauce-to-your-sandwich-style-generics-b0093aa5979d --- .../main/kotlin/io/goooler/demoapp/main/api/MainCommonApi.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/biz/main/src/main/kotlin/io/goooler/demoapp/main/api/MainCommonApi.kt b/biz/main/src/main/kotlin/io/goooler/demoapp/main/api/MainCommonApi.kt index 01c98b0f9..d04d362ed 100644 --- a/biz/main/src/main/kotlin/io/goooler/demoapp/main/api/MainCommonApi.kt +++ b/biz/main/src/main/kotlin/io/goooler/demoapp/main/api/MainCommonApi.kt @@ -10,6 +10,6 @@ interface MainCommonApi { @GET("users/{user}/repos") suspend fun getRepoList( @Path("user") user: String, - @QueryMap params: Map, + @QueryMap params: Map, ): List }