aboutsummaryrefslogtreecommitdiff
path: root/okhttp-client-handler
diff options
context:
space:
mode:
authorOmar Alejandro Mainegra Sarduy <omainegra@gmail.com>2017-08-04 19:36:07 -0400
committerOmar Alejandro Mainegra Sarduy <omainegra@gmail.com>2017-08-04 19:36:07 -0400
commitaffc8cef21ba2ff8f46b2144b2064b8150840f2b (patch)
tree6e0edb41759f423e77d6efa5053111fc1b48ed94 /okhttp-client-handler
parent436ba7dc5afbecbe529b68835a8a4473bd92e56b (diff)
parentff76a1737bb88c2664927db309d196e677ba3e98 (diff)
downloadsttp-affc8cef21ba2ff8f46b2144b2064b8150840f2b.tar.gz
sttp-affc8cef21ba2ff8f46b2144b2064b8150840f2b.tar.bz2
sttp-affc8cef21ba2ff8f46b2144b2064b8150840f2b.zip
Merge branch 'master' into okhttp3-monix
# Conflicts: # okhttp-client-handler/src/main/scala/com/softwaremill/sttp/okhttp/OkHttpClientHandler.scala
Diffstat (limited to 'okhttp-client-handler')
-rw-r--r--okhttp-client-handler/src/main/scala/com/softwaremill/sttp/okhttp/OkHttpClientHandler.scala7
1 files changed, 5 insertions, 2 deletions
diff --git a/okhttp-client-handler/src/main/scala/com/softwaremill/sttp/okhttp/OkHttpClientHandler.scala b/okhttp-client-handler/src/main/scala/com/softwaremill/sttp/okhttp/OkHttpClientHandler.scala
index af896d4..2090e02 100644
--- a/okhttp-client-handler/src/main/scala/com/softwaremill/sttp/okhttp/OkHttpClientHandler.scala
+++ b/okhttp-client-handler/src/main/scala/com/softwaremill/sttp/okhttp/OkHttpClientHandler.scala
@@ -90,6 +90,8 @@ abstract class OkHttpClientHandler[R[_], S](client: OkHttpClient)
case ResponseAsByteArray => Try(res.body().bytes())
case ras @ ResponseAsStream() =>
responseBodyToStream(res).map(ras.responseIsStream)
+ case ResponseAsFile(file, overwrite) =>
+ Try(ResponseAs.saveFile(file, res.body().byteStream(), overwrite))
}
}
@@ -131,9 +133,10 @@ abstract class OkHttpAsyncClientHandler[R[_], S](client: OkHttpClient,
.enqueue(new Callback {
override def onFailure(call: Call, e: IOException): Unit =
error(e)
-
+
override def onResponse(call: Call, response: OkHttpResponse): Unit =
- success(readResponse(response, r.responseAs))
+ try success(readResponse(response, r.responseAs))
+ catch { case e: Exception => error(e) }
})
})
}