Skip to content

Commit e4d644c

Browse files
stainless-botRobertCraigie
authored andcommitted
fix: set correct timeouts on okhttp client (#49)
1 parent b09c620 commit e4d644c

1 file changed

Lines changed: 14 additions & 2 deletions

File tree

  • finch-java-client-okhttp/src/main/kotlin/com/tryfinch/api/client/okhttp

finch-java-client-okhttp/src/main/kotlin/com/tryfinch/api/client/okhttp/OkHttpClient.kt

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,13 @@ private constructor(private val okHttpClient: okhttp3.OkHttpClient, private val
3333

3434
private fun getClient(requestOptions: RequestOptions): okhttp3.OkHttpClient {
3535
val timeout = requestOptions.timeout ?: return okHttpClient
36-
return okHttpClient.newBuilder().callTimeout(timeout).build()
36+
return okHttpClient
37+
.newBuilder()
38+
.connectTimeout(timeout)
39+
.readTimeout(timeout)
40+
.writeTimeout(timeout)
41+
.callTimeout(if (timeout.seconds == 0L) timeout else timeout.plusSeconds(30))
42+
.build()
3743
}
3844

3945
override fun execute(
@@ -177,7 +183,13 @@ private constructor(private val okHttpClient: okhttp3.OkHttpClient, private val
177183

178184
fun build(): OkHttpClient {
179185
return OkHttpClient(
180-
okhttp3.OkHttpClient.Builder().callTimeout(timeout).proxy(proxy).build(),
186+
okhttp3.OkHttpClient.Builder()
187+
.connectTimeout(timeout)
188+
.readTimeout(timeout)
189+
.writeTimeout(timeout)
190+
.callTimeout(if (timeout.seconds == 0L) timeout else timeout.plusSeconds(30))
191+
.proxy(proxy)
192+
.build(),
181193
checkNotNull(baseUrl) { "`baseUrl` is required but was not set" },
182194
)
183195
}

0 commit comments

Comments
 (0)