diff --git a/akka-docs/rst/scala/code/docs/http/scaladsl/HttpClientExampleSpec.scala b/akka-docs/rst/scala/code/docs/http/scaladsl/HttpClientExampleSpec.scala index 69075c8d5f..cdfceb3e93 100644 --- a/akka-docs/rst/scala/code/docs/http/scaladsl/HttpClientExampleSpec.scala +++ b/akka-docs/rst/scala/code/docs/http/scaladsl/HttpClientExampleSpec.scala @@ -5,6 +5,7 @@ package docs.http.scaladsl import akka.actor.{ ActorLogging, ActorSystem } +import akka.stream.{ ActorMaterializerSettings } import akka.util.ByteString import org.scalatest.{ Matchers, WordSpec } @@ -78,15 +79,17 @@ class HttpClientExampleSpec extends WordSpec with Matchers { import akka.actor.Actor import akka.http.scaladsl.Http import akka.http.scaladsl.model._ - import akka.stream.scaladsl.ImplicitMaterializer + import akka.stream.ActorMaterializer + import akka.stream.ActorMaterializerSettings class Myself extends Actor - with ImplicitMaterializer with ActorLogging { import akka.pattern.pipe import context.dispatcher + final implicit val materializer: ActorMaterializer = ActorMaterializer(ActorMaterializerSettings(context.system)) + val http = Http(context.system) override def preStart() = { diff --git a/akka-docs/rst/scala/http/client-side/request-level.rst b/akka-docs/rst/scala/http/client-side/request-level.rst index c322058ff7..5061b124bc 100644 --- a/akka-docs/rst/scala/http/client-side/request-level.rst +++ b/akka-docs/rst/scala/http/client-side/request-level.rst @@ -54,9 +54,6 @@ to the Actor as a message. .. includecode:: ../../code/docs/http/scaladsl/HttpClientExampleSpec.scala :include: single-request-in-actor-example -An ``ActorMaterializer`` instance needed for Http to perfom its duties can be obtained using the ``ImplicitMaterializer`` -helper trait. - Example ------- diff --git a/akka-stream-tests/src/test/scala/akka/stream/scaladsl/ImplicitMaterializerSpec.scala b/akka-stream-tests/src/test/scala/akka/stream/scaladsl/ImplicitMaterializerSpec.scala deleted file mode 100644 index 458584e777..0000000000 --- a/akka-stream-tests/src/test/scala/akka/stream/scaladsl/ImplicitMaterializerSpec.scala +++ /dev/null @@ -1,40 +0,0 @@ -/** - * Copyright (C) 2014 Typesafe Inc. - */ -package akka.stream.scaladsl - -import akka.actor.{ Actor, Props } -import akka.stream.ActorMaterializerSettings -import akka.stream.testkit.AkkaSpec -import akka.testkit._ -import akka.pattern.pipe - -object ImplicitMaterializerSpec { - class SomeActor(input: List[String]) extends Actor with ImplicitMaterializer { - - override def materializerSettings = ActorMaterializerSettings(context.system) - .withInputBuffer(initialSize = 2, maxSize = 16) - - val flow = Source(input).map(_.toUpperCase()) - - def receive = { - case "run" ⇒ - // run takes an implicit ActorMaterializer parameter, which is provided by ImplicitMaterializer - import context.dispatcher - flow.runFold("")(_ + _) pipeTo sender() - } - } -} - -class ImplicitMaterializerSpec extends AkkaSpec with ImplicitSender { - import ImplicitMaterializerSpec._ - - "An ImplicitMaterializer" must { - - "provide implicit ActorMaterializer" in { - val actor = system.actorOf(Props(classOf[SomeActor], List("a", "b", "c")).withDispatcher("akka.test.stream-dispatcher")) - actor ! "run" - expectMsg("ABC") - } - } -} diff --git a/akka-stream/src/main/scala/akka/stream/scaladsl/ImplicitMaterializer.scala b/akka-stream/src/main/scala/akka/stream/scaladsl/ImplicitMaterializer.scala deleted file mode 100644 index 5b53cc02bf..0000000000 --- a/akka-stream/src/main/scala/akka/stream/scaladsl/ImplicitMaterializer.scala +++ /dev/null @@ -1,26 +0,0 @@ -/** - * Copyright (C) 2014 Typesafe Inc. - */ -package akka.stream.scaladsl - -import akka.actor.Actor -import akka.stream.ActorMaterializerSettings -import akka.stream.ActorMaterializer - -/** - * Mix this trait into your [[akka.actor.Actor]] if you need an implicit - * [[akka.stream.Materializer]] in scope. - * - * Subclass may override [[#materializerSettings]] to define custom - * [[akka.stream.ActorMaterializerSettings]] for the `Materializer`. - */ -trait ImplicitMaterializer { this: Actor ⇒ - - /** - * Subclass may override this to define custom - * [[akka.stream.ActorMaterializerSettings]] for the `Materializer`. - */ - def materializerSettings: ActorMaterializerSettings = ActorMaterializerSettings(context.system) - - final implicit val materializer: ActorMaterializer = ActorMaterializer(Some(materializerSettings)) -} diff --git a/akka-stream/src/main/scala/akka/stream/scaladsl/package.scala b/akka-stream/src/main/scala/akka/stream/scaladsl/package.scala index f76ea0b218..1e42d15522 100644 --- a/akka-stream/src/main/scala/akka/stream/scaladsl/package.scala +++ b/akka-stream/src/main/scala/akka/stream/scaladsl/package.scala @@ -47,9 +47,6 @@ package akka.stream * by those methods that materialize the Flow into a series of * [[org.reactivestreams.Processor]] instances. The returned reactive stream * is fully started and active. - * - * Use [[ImplicitMaterializer]] to define an implicit [[akka.stream.Materializer]] - * inside an [[akka.actor.Actor]]. */ package object scaladsl { }