diff --git a/ayannetworking/build.gradle b/ayannetworking/build.gradle index 07a1da7..c4bc4d2 100644 --- a/ayannetworking/build.gradle +++ b/ayannetworking/build.gradle @@ -9,7 +9,7 @@ android { minSdkVersion 16 targetSdkVersion 30 versionCode 1 - versionName "1.6.0" + versionName "1.6.1" } buildTypes { diff --git a/ayannetworking/src/main/java/ir/ayantech/ayannetworking/api/AyanApi.kt b/ayannetworking/src/main/java/ir/ayantech/ayannetworking/api/AyanApi.kt index 203a88b..82a9463 100644 --- a/ayannetworking/src/main/java/ir/ayantech/ayannetworking/api/AyanApi.kt +++ b/ayannetworking/src/main/java/ir/ayantech/ayannetworking/api/AyanApi.kt @@ -10,7 +10,7 @@ import ir.ayantech.ayannetworking.helper.AppSignatureHelper import ir.ayantech.ayannetworking.helper.dePent import ir.ayantech.ayannetworking.helper.getTypeOf import ir.ayantech.ayannetworking.helper.toPrettyFormat -import ir.ayantech.ayannetworking.networking.RetrofitClient +import ir.ayantech.ayannetworking.networking.NetworkingClient import okhttp3.OkHttpClient import okhttp3.ResponseBody import retrofit2.Call @@ -84,19 +84,29 @@ class AyanApi( retrofitInstance.create(ApiInterface::class.java) } - private val retrofitInstance: Retrofit by lazy { - RetrofitClient.getInstance( + private val okHttpClient: OkHttpClient by lazy { + NetworkingClient.getOkHttpInstance( userAgent, - defaultBaseUrl, timeout, setNoProxy, hostName, logItems, - feed, + feed + ) + } + + private val retrofitInstance: Retrofit by lazy { + NetworkingClient.getInstance( + okHttpClient, + defaultBaseUrl, gson ) } + fun cancelCalls() { + okHttpClient.dispatcher().cancelAll() + } + inline fun ayanCall( ayanCallStatus: AyanCallStatus, endPoint: String, diff --git a/ayannetworking/src/main/java/ir/ayantech/ayannetworking/networking/RetrofitClient.kt b/ayannetworking/src/main/java/ir/ayantech/ayannetworking/networking/NetworkingClient.kt similarity index 85% rename from ayannetworking/src/main/java/ir/ayantech/ayannetworking/networking/RetrofitClient.kt rename to ayannetworking/src/main/java/ir/ayantech/ayannetworking/networking/NetworkingClient.kt index b34e094..7455424 100644 --- a/ayannetworking/src/main/java/ir/ayantech/ayannetworking/networking/RetrofitClient.kt +++ b/ayannetworking/src/main/java/ir/ayantech/ayannetworking/networking/NetworkingClient.kt @@ -10,17 +10,12 @@ import retrofit2.converter.gson.GsonConverterFactory import java.net.Proxy import java.util.concurrent.TimeUnit -object RetrofitClient { +object NetworkingClient { @Synchronized fun getInstance( - userAgent: String, + okHttpClient: OkHttpClient, defaultBaseUrl: String, - timeout: Long = 20, - setNoProxy: Boolean, - hostName: String? = null, - logItems: List? = null, - feed: Array? = null, gson: Gson? ): Retrofit = Retrofit.Builder() @@ -29,10 +24,10 @@ object RetrofitClient { else GsonConverterFactory.create(gson) ) .baseUrl(defaultBaseUrl) - .client(getOkHttpInstance(userAgent, timeout, setNoProxy, hostName, logItems, feed)) + .client(okHttpClient) .build() - private fun getOkHttpInstance( + fun getOkHttpInstance( userAgent: String, timeout: Long, setNoProxy: Boolean,