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
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());
The source code for this page can be found here.