aboutsummaryrefslogtreecommitdiff
path: root/async-http-client-backend/cats
diff options
context:
space:
mode:
authoradamw <adam@warski.org>2017-11-16 12:22:50 +0100
committeradamw <adam@warski.org>2017-11-16 12:22:50 +0100
commit837c1a12d9bcf88e3d1055de7e1673a1b92bbe21 (patch)
tree520bb1e75f420048bc8d270e4fe395afd78f7206 /async-http-client-backend/cats
parent585bfcc741109bef5c534ce245811595062af086 (diff)
downloadsttp-837c1a12d9bcf88e3d1055de7e1673a1b92bbe21.tar.gz
sttp-837c1a12d9bcf88e3d1055de7e1673a1b92bbe21.tar.bz2
sttp-837c1a12d9bcf88e3d1055de7e1673a1b92bbe21.zip
Add the possibility for monads to recover from errors
Diffstat (limited to 'async-http-client-backend/cats')
-rw-r--r--async-http-client-backend/cats/src/main/scala/com/softwaremill/sttp/asynchttpclient/cats/AsyncHttpClientCatsBackend.scala4
1 files changed, 4 insertions, 0 deletions
diff --git a/async-http-client-backend/cats/src/main/scala/com/softwaremill/sttp/asynchttpclient/cats/AsyncHttpClientCatsBackend.scala b/async-http-client-backend/cats/src/main/scala/com/softwaremill/sttp/asynchttpclient/cats/AsyncHttpClientCatsBackend.scala
index a38e08b..471d26c 100644
--- a/async-http-client-backend/cats/src/main/scala/com/softwaremill/sttp/asynchttpclient/cats/AsyncHttpClientCatsBackend.scala
+++ b/async-http-client-backend/cats/src/main/scala/com/softwaremill/sttp/asynchttpclient/cats/AsyncHttpClientCatsBackend.scala
@@ -78,4 +78,8 @@ private[cats] class AsyncMonad[F[_]](implicit F: Async[F])
F.flatMap(fa)(f)
override def error[T](t: Throwable): F[T] = F.raiseError(t)
+
+ override protected def handleWrappedError[T](rt: F[T])(
+ h: PartialFunction[Throwable, F[T]]): F[T] =
+ F.recoverWith(rt)(h)
}