diff options
author | Piotr Gabara <piotr.gabara@hotmail.com> | 2017-09-06 19:09:16 +0200 |
---|---|---|
committer | Piotr Gabara <piotr.gabara@hotmail.com> | 2017-09-06 19:20:17 +0200 |
commit | 6874e55a316e4fe8a650efd3a849814a91bba8cb (patch) | |
tree | e22fa85abb61805b2d8f363b0e55eac1d60a94f3 /okhttp-handler | |
parent | e82346820797bb2d80d0fada7f17c5880871edce (diff) | |
download | sttp-6874e55a316e4fe8a650efd3a849814a91bba8cb.tar.gz sttp-6874e55a316e4fe8a650efd3a849814a91bba8cb.tar.bz2 sttp-6874e55a316e4fe8a650efd3a849814a91bba8cb.zip |
Post review changes
Diffstat (limited to 'okhttp-handler')
2 files changed, 18 insertions, 27 deletions
diff --git a/okhttp-handler/monix/src/main/scala/com/softwaremill/sttp/okhttp/monix/OkHttpMonixHandler.scala b/okhttp-handler/monix/src/main/scala/com/softwaremill/sttp/okhttp/monix/OkHttpMonixHandler.scala index 608d499..8d20bad 100644 --- a/okhttp-handler/monix/src/main/scala/com/softwaremill/sttp/okhttp/monix/OkHttpMonixHandler.scala +++ b/okhttp-handler/monix/src/main/scala/com/softwaremill/sttp/okhttp/monix/OkHttpMonixHandler.scala @@ -1,7 +1,7 @@ package com.softwaremill.sttp.okhttp.monix import java.nio.ByteBuffer -import java.util.concurrent.{ArrayBlockingQueue, TimeUnit} +import java.util.concurrent.ArrayBlockingQueue import com.softwaremill.sttp.{SttpHandler, _} import com.softwaremill.sttp.okhttp.{OkHttpAsyncHandler, OkHttpHandler} @@ -89,13 +89,8 @@ object OkHttpMonixHandler { implicit s: Scheduler = Scheduler.Implicits.global) : SttpHandler[Task, Observable[ByteBuffer]] = OkHttpMonixHandler( - OkHttpHandler - .defaultBuilder() - .connectTimeout(connectionTimeout.toMillis, TimeUnit.MILLISECONDS) - .readTimeout(SttpHandler.DefaultConnectionTimeout.toMillis, TimeUnit.MILLISECONDS) - .build(), - closeClient = true - )(s) + OkHttpHandler.defaultClient(DefaultReadTimeout.toMillis, connectionTimeout.toMillis), + closeClient = true)(s) def usingClient(client: OkHttpClient)(implicit s: Scheduler = Scheduler.Implicits.global) diff --git a/okhttp-handler/src/main/scala/com/softwaremill/sttp/okhttp/OkHttpClientHandler.scala b/okhttp-handler/src/main/scala/com/softwaremill/sttp/okhttp/OkHttpClientHandler.scala index d670b62..3e57930 100644 --- a/okhttp-handler/src/main/scala/com/softwaremill/sttp/okhttp/OkHttpClientHandler.scala +++ b/okhttp-handler/src/main/scala/com/softwaremill/sttp/okhttp/OkHttpClientHandler.scala @@ -144,20 +144,24 @@ abstract class OkHttpHandler[R[_], S](client: OkHttpClient, } object OkHttpHandler { - def defaultBuilder(): OkHttpClient.Builder = + + private[okhttp] def defaultClient(readTimeout: Long, + connectionTimeout: Long): OkHttpClient = new OkHttpClient.Builder() .followRedirects(false) .followSslRedirects(false) - - def updateClientIfCustomReadTimeout[T, S]( - r: Request[T, S], - client: OkHttpClient): OkHttpClient = { - if (r.readTimeout == SttpHandler.DefaultConnectionTimeout) client + .connectTimeout(connectionTimeout, TimeUnit.MILLISECONDS) + .readTimeout(readTimeout, TimeUnit.MILLISECONDS) + .build() + + private[okhttp] def updateClientIfCustomReadTimeout[T, S](r: Request[T, S], + client: OkHttpClient): OkHttpClient = { + val readTimeout = r.options.readTimeout + if (readTimeout == DefaultReadTimeout) client else client .newBuilder() - .readTimeout(if (r.readTimeout.isFinite()) r.readTimeout.toMillis - else 0, + .readTimeout(if (readTimeout.isFinite()) readTimeout.toMillis else 0, TimeUnit.MILLISECONDS) .build() @@ -188,10 +192,7 @@ object OkHttpSyncHandler { connectionTimeout: FiniteDuration = SttpHandler.DefaultConnectionTimeout) : SttpHandler[Id, Nothing] = OkHttpSyncHandler( - OkHttpHandler - .defaultBuilder() - .connectTimeout(connectionTimeout.toMillis, TimeUnit.MILLISECONDS) - .build(), + OkHttpHandler.defaultClient(DefaultReadTimeout.toMillis, connectionTimeout.toMillis), closeClient = true) def usingClient(client: OkHttpClient): SttpHandler[Id, Nothing] = @@ -242,13 +243,8 @@ object OkHttpFutureHandler { implicit ec: ExecutionContext = ExecutionContext.Implicits.global) : SttpHandler[Future, Nothing] = OkHttpFutureHandler( - OkHttpHandler - .defaultBuilder() - .connectTimeout(connectionTimeout.toMillis, TimeUnit.MILLISECONDS) - .readTimeout(SttpHandler.DefaultConnectionTimeout.toMillis, TimeUnit.MILLISECONDS) - .build(), - closeClient = true - ) + OkHttpHandler.defaultClient(DefaultReadTimeout.toMillis, connectionTimeout.toMillis), + closeClient = true) def usingClient(client: OkHttpClient)(implicit ec: ExecutionContext = ExecutionContext.Implicits.global) |