From 4d79397aabe6a372dbe0ae5e22f5202a1694a058 Mon Sep 17 00:00:00 2001 From: SeonHwan-Kim Date: Thu, 11 May 2023 01:22:43 +0900 Subject: [PATCH] =?UTF-8?q?feat=20:=20KakaoApiFactory=20=EC=B6=94=EA=B0=80?= =?UTF-8?q?=20#7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/android/go/sopt/data/remote/ApiFactory.kt | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/app/src/main/java/org/android/go/sopt/data/remote/ApiFactory.kt b/app/src/main/java/org/android/go/sopt/data/remote/ApiFactory.kt index 79a6bf0..b9d898c 100644 --- a/app/src/main/java/org/android/go/sopt/data/remote/ApiFactory.kt +++ b/app/src/main/java/org/android/go/sopt/data/remote/ApiFactory.kt @@ -5,9 +5,11 @@ import kotlinx.serialization.json.Json import okhttp3.MediaType.Companion.toMediaType import org.android.go.sopt.BuildConfig import org.android.go.sopt.data.remote.service.HomeUserService +import org.android.go.sopt.data.remote.service.KakaoSearchService import org.android.go.sopt.data.remote.service.SignInService import org.android.go.sopt.data.remote.service.SignUpService import retrofit2.Retrofit +import retrofit2.create object ApiFactory { val retrofit: Retrofit by lazy { @@ -32,8 +34,21 @@ object ReqresApiFactory { inline fun create(): T = retrofit.create(T::class.java) } +object KakaoApiFactory{ + val retrofit: Retrofit by lazy { + val json = Json { ignoreUnknownKeys = true } + Retrofit.Builder() + .baseUrl(BuildConfig.KAKAO_BASE_URL) + .addConverterFactory(json.asConverterFactory("application/json".toMediaType())) + .build() + } + + inline fun create(): T = retrofit.create(T::class.java) +} + object ServicePool { val signUpService = ApiFactory.create() val signInService = ApiFactory.create() val getHomeUserService = ReqresApiFactory.create() + val kakaoSearchService = KakaoApiFactory.create() } \ No newline at end of file