1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
package cn.flightfeather.thirdapp.common.net
 
import okhttp3.Interceptor
import okhttp3.Response
 
/**
 * @author riku
 * Date: 2020/4/24
 */
class NetWorkProgressInterceptor(private val netWorkProgressListener: NetWorkProgressListener) : Interceptor {
    override fun intercept(chain: Interceptor.Chain): Response {
        val request = chain.request()
        if (request.body() == null) {
            return chain.proceed(request)
        }
        val b = request.newBuilder()
            .method(
                request.method(),
                ProgressRequestBody(request.body(), netWorkProgressListener))
            .build()
        return chain.proceed(b)
    }
}