extractActorSystem

Signature

def extractActorSystem: Directive1[ActorSystem]

Description

Extracts the ActorSystemActorSystem from the RequestContextRequestContext, which can be useful when the external API in your route needs one.

Warning

This is only supported when the available Materializer is an ActorMaterializer.

Example

Scala
val route = extractActorSystem { actorSystem =>
  complete(s"Actor System extracted, hash=${actorSystem.hashCode()}")
}

// tests:
Get("/") ~> route ~> check {
  responseAs[String] shouldEqual s"Actor System extracted, hash=${system.hashCode()}"
}
Java
import static akka.http.javadsl.server.Directives.extractActorSystem;

final Route route = extractActorSystem(actorSystem ->
  complete("Actor System extracted, hash=" + actorSystem.hashCode())
);

// tests:
testRoute(route).run(HttpRequest.GET("/"))
  .assertEntity("Actor System extracted, hash=" + system().hashCode());
Found an error in this documentation? The source code for this page can be found here. Please feel free to edit and contribute a pull request.