You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
54 lines
1.4 KiB
54 lines
1.4 KiB
package com.example.dattingapp.registration
|
|
|
|
import okhttp3.OkHttpClient
|
|
import okhttp3.logging.HttpLoggingInterceptor
|
|
import retrofit2.Retrofit
|
|
import retrofit2.converter.gson.GsonConverterFactory
|
|
import java.util.concurrent.TimeUnit
|
|
|
|
object NetworkModule {
|
|
|
|
private const val AUTH_BASE_URL =
|
|
"https://counts-indicates-stud-addressing.trycloudflare.com"
|
|
|
|
private const val UPLOAD_BASE_URL =
|
|
"https://counts-indicates-stud-addressing.trycloudflare.com/"
|
|
|
|
private fun createClient(): OkHttpClient {
|
|
|
|
val logging = HttpLoggingInterceptor().apply {
|
|
level = HttpLoggingInterceptor.Level.BODY
|
|
}
|
|
|
|
return OkHttpClient.Builder()
|
|
.addInterceptor(logging)
|
|
.connectTimeout(60, TimeUnit.SECONDS)
|
|
.readTimeout(120, TimeUnit.SECONDS)
|
|
.writeTimeout(120, TimeUnit.SECONDS)
|
|
.build()
|
|
}
|
|
|
|
private fun createRetrofit(baseUrl: String): Retrofit {
|
|
|
|
return Retrofit.Builder()
|
|
.baseUrl(baseUrl)
|
|
.client(createClient())
|
|
.addConverterFactory(GsonConverterFactory.create())
|
|
.build()
|
|
}
|
|
|
|
// Registration API
|
|
val authApi: ApiService by lazy {
|
|
|
|
createRetrofit(AUTH_BASE_URL)
|
|
.create(ApiService::class.java)
|
|
}
|
|
|
|
// Upload API
|
|
val uploadApi: ApiService by lazy {
|
|
|
|
createRetrofit(UPLOAD_BASE_URL)
|
|
.create(ApiService::class.java)
|
|
}
|
|
}
|
|
|
|
|