aboutsummaryrefslogtreecommitdiff
path: root/async-http-client-handler/scalaz/src/main
diff options
context:
space:
mode:
Diffstat (limited to 'async-http-client-handler/scalaz/src/main')
-rw-r--r--async-http-client-handler/scalaz/src/main/scala/com/softwaremill/sttp/asynchttpclient/scalaz/ScalazAsyncHttpClientHandler.scala15
1 files changed, 10 insertions, 5 deletions
diff --git a/async-http-client-handler/scalaz/src/main/scala/com/softwaremill/sttp/asynchttpclient/scalaz/ScalazAsyncHttpClientHandler.scala b/async-http-client-handler/scalaz/src/main/scala/com/softwaremill/sttp/asynchttpclient/scalaz/ScalazAsyncHttpClientHandler.scala
index 0460fff..f4de2eb 100644
--- a/async-http-client-handler/scalaz/src/main/scala/com/softwaremill/sttp/asynchttpclient/scalaz/ScalazAsyncHttpClientHandler.scala
+++ b/async-http-client-handler/scalaz/src/main/scala/com/softwaremill/sttp/asynchttpclient/scalaz/ScalazAsyncHttpClientHandler.scala
@@ -16,8 +16,11 @@ import org.reactivestreams.Publisher
import scalaz.{-\/, \/-}
import scalaz.concurrent.Task
-class ScalazAsyncHttpClientHandler private (asyncHttpClient: AsyncHttpClient)
- extends AsyncHttpClientHandler[Task, Nothing](asyncHttpClient, TaskMonad) {
+class ScalazAsyncHttpClientHandler private (asyncHttpClient: AsyncHttpClient,
+ closeClient: Boolean)
+ extends AsyncHttpClientHandler[Task, Nothing](asyncHttpClient,
+ TaskMonad,
+ closeClient) {
override protected def streamBodyToPublisher(
s: Nothing): Publisher[ByteBuffer] = s // nothing is everything
@@ -29,11 +32,13 @@ class ScalazAsyncHttpClientHandler private (asyncHttpClient: AsyncHttpClient)
object ScalazAsyncHttpClientHandler {
def apply(): ScalazAsyncHttpClientHandler =
- new ScalazAsyncHttpClientHandler(new DefaultAsyncHttpClient())
+ new ScalazAsyncHttpClientHandler(new DefaultAsyncHttpClient(),
+ closeClient = true)
def usingConfig(cfg: AsyncHttpClientConfig): ScalazAsyncHttpClientHandler =
- new ScalazAsyncHttpClientHandler(new DefaultAsyncHttpClient())
+ new ScalazAsyncHttpClientHandler(new DefaultAsyncHttpClient(),
+ closeClient = true)
def usingClient(client: AsyncHttpClient): ScalazAsyncHttpClientHandler =
- new ScalazAsyncHttpClientHandler(client)
+ new ScalazAsyncHttpClientHandler(client, closeClient = false)
}
private[scalaz] object TaskMonad extends MonadAsyncError[Task] {