From a5d862051462a5fcc2717b405896a6d424002e54 Mon Sep 17 00:00:00 2001
From: riku <risaku@163.com>
Date: 星期二, 22 十二月 2020 15:43:06 +0800
Subject: [PATCH] 1. 调整了数控实体的存储位置; 2. 新增数据表“媒体文件类型别名表”; 3. 修改任意拍模块,将图片分类改为根据场景类型动态生成,同时新增修改分类别名功能; 4. 优化子任务选择界面的任务排序方式,按照“待开始”、“执行中”、“未执行”的顺序进行排序;
---
app/src/main/java/cn/flightfeather/thirdapp/common/net/RetrofitFactory.kt | 45 ++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 44 insertions(+), 1 deletions(-)
diff --git a/app/src/main/java/cn/flightfeather/thirdapp/common/net/RetrofitFactory.kt b/app/src/main/java/cn/flightfeather/thirdapp/common/net/RetrofitFactory.kt
index a9169a0..0fa1d28 100644
--- a/app/src/main/java/cn/flightfeather/thirdapp/common/net/RetrofitFactory.kt
+++ b/app/src/main/java/cn/flightfeather/thirdapp/common/net/RetrofitFactory.kt
@@ -1,20 +1,54 @@
package cn.flightfeather.thirdapp.common.net
+import cn.flightfeather.thirdapp.BuildConfig
import cn.flightfeather.thirdapp.CommonApplication
+import com.google.gson.GsonBuilder
import io.reactivex.Observable
import io.reactivex.android.schedulers.AndroidSchedulers
import io.reactivex.schedulers.Schedulers
+import okhttp3.Interceptor
+import okhttp3.OkHttpClient
import retrofit2.Response
import retrofit2.Retrofit
+import retrofit2.adapter.rxjava2.RxJava2CallAdapterFactory
+import retrofit2.converter.gson.GsonConverterFactory
+import java.util.concurrent.TimeUnit
/**
* @author riku
* Date: 2019/7/22
* 缃戠粶璇锋眰
*/
-class RetrofitFactory constructor(application: CommonApplication){
+class RetrofitFactory constructor(val application: CommonApplication){
val retrofit: Retrofit = application.retrofit
+ val retrofitImage: Retrofit = application.retrofitImage
+
+ private fun newOkHttpClient(list: List<Interceptor>): OkHttpClient =
+ OkHttpClient.Builder()
+ .connectTimeout(20 * 1000L, TimeUnit.MILLISECONDS)
+ .apply {
+ list.forEach {
+ addInterceptor(it)
+ }
+ }
+ .build()
+
+ private fun newRetrofit(mOkHttpClient: OkHttpClient): Retrofit =
+ Retrofit.Builder()
+ .apply {
+ baseUrl(application.ROOT_URL_RELEASE)
+ }
+ .addConverterFactory(
+ GsonConverterFactory.create(
+ GsonBuilder()
+ .setDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSZ")
+ .create()
+ )
+ )
+ .addCallAdapterFactory(RxJava2CallAdapterFactory.create())
+ .client(mOkHttpClient)
+ .build()
companion object {
@@ -35,5 +69,14 @@
.observeOn(AndroidSchedulers.mainThread())
.subscribe(subscriber)
}
+
+ fun withProgressListeningRetrofit(listener: NetWorkProgressListener?): Retrofit {
+ return if (listener == null) {
+ instance.retrofit
+ } else {
+ val c = instance.newOkHttpClient(listOf(NetWorkProgressInterceptor(listener)))
+ instance.newRetrofit(c)
+ }
+ }
}
}
\ No newline at end of file
--
Gitblit v1.9.3