aboutsummaryrefslogtreecommitdiff
path: root/akka-http-handler
diff options
context:
space:
mode:
authorPiotr Gabara <piotr.gabara@hotmail.com>2017-09-06 19:09:16 +0200
committerPiotr Gabara <piotr.gabara@hotmail.com>2017-09-06 19:20:17 +0200
commit6874e55a316e4fe8a650efd3a849814a91bba8cb (patch)
treee22fa85abb61805b2d8f363b0e55eac1d60a94f3 /akka-http-handler
parente82346820797bb2d80d0fada7f17c5880871edce (diff)
downloadsttp-6874e55a316e4fe8a650efd3a849814a91bba8cb.tar.gz
sttp-6874e55a316e4fe8a650efd3a849814a91bba8cb.tar.bz2
sttp-6874e55a316e4fe8a650efd3a849814a91bba8cb.zip
Post review changes
Diffstat (limited to 'akka-http-handler')
-rw-r--r--akka-http-handler/src/main/scala/com/softwaremill/sttp/akkahttp/AkkaHttpHandler.scala26
1 files changed, 15 insertions, 11 deletions
diff --git a/akka-http-handler/src/main/scala/com/softwaremill/sttp/akkahttp/AkkaHttpHandler.scala b/akka-http-handler/src/main/scala/com/softwaremill/sttp/akkahttp/AkkaHttpHandler.scala
index da538a1..c6b0a2c 100644
--- a/akka-http-handler/src/main/scala/com/softwaremill/sttp/akkahttp/AkkaHttpHandler.scala
+++ b/akka-http-handler/src/main/scala/com/softwaremill/sttp/akkahttp/AkkaHttpHandler.scala
@@ -37,21 +37,22 @@ class AkkaHttpHandler private (actorSystem: ActorSystem,
private implicit val as: ActorSystem = actorSystem
private implicit val materializer: ActorMaterializer = ActorMaterializer()
+ private val connectionSettings = ClientConnectionSettings(actorSystem)
+ .withConnectingTimeout(connectionTimeout)
+
+ private val connectionPoolSettings = ConnectionPoolSettings(actorSystem)
+
override def send[T](r: Request[T, S]): Future[Response[T]] = {
implicit val ec: ExecutionContext = this.ec
- val connectionSettings = ClientConnectionSettings(actorSystem)
- .withIdleTimeout(r.readTimeout)
- .withConnectingTimeout(connectionTimeout)
-
- val connectionPoolSettings = ConnectionPoolSettings(actorSystem)
- .withConnectionSettings(connectionSettings)
+ val settings = connectionPoolSettings
+ .withConnectionSettings(
+ connectionSettings.withIdleTimeout(r.options.readTimeout))
requestToAkka(r)
.flatMap(setBodyOnAkka(r, r.body, _))
.toFuture
- .flatMap(req =>
- Http().singleRequest(req, settings = connectionPoolSettings))
+ .flatMap(req => Http().singleRequest(req, settings = settings))
.flatMap { hr =>
val code = hr.status.intValue()
@@ -285,7 +286,8 @@ object AkkaHttpHandler {
private def apply(actorSystem: ActorSystem,
ec: ExecutionContext,
terminateActorSystemOnClose: Boolean,
- connectionTimeout: FiniteDuration): SttpHandler[Future, Source[ByteString, Any]] =
+ connectionTimeout: FiniteDuration)
+ : SttpHandler[Future, Source[ByteString, Any]] =
new FollowRedirectsHandler(
new AkkaHttpHandler(actorSystem,
ec,
@@ -297,7 +299,8 @@ object AkkaHttpHandler {
* e.g. mapping responses. Defaults to the global execution
* context.
*/
- def apply(connectionTimeout: FiniteDuration = SttpHandler.DefaultConnectionTimeout)(
+ def apply(connectionTimeout: FiniteDuration =
+ SttpHandler.DefaultConnectionTimeout)(
implicit ec: ExecutionContext = ExecutionContext.Implicits.global)
: SttpHandler[Future, Source[ByteString, Any]] =
AkkaHttpHandler(ActorSystem("sttp"),
@@ -313,7 +316,8 @@ object AkkaHttpHandler {
* context.
*/
def usingActorSystem(actorSystem: ActorSystem,
- connectionTimeout: FiniteDuration = SttpHandler.DefaultConnectionTimeout)(
+ connectionTimeout: FiniteDuration =
+ SttpHandler.DefaultConnectionTimeout)(
implicit ec: ExecutionContext = ExecutionContext.Implicits.global)
: SttpHandler[Future, Source[ByteString, Any]] =
AkkaHttpHandler(actorSystem,