trait BasicDirectives extends AnyRef

Source
BasicDirectives.scala
Linear Supertypes
Type Hierarchy
Ordering
  1. Grouped
  2. Alphabetic
  3. By Inheritance
Inherited
  1. BasicDirectives
  2. AnyRef
  3. Any
Implicitly
  1. by any2stringadd
  2. by StringFormat
  3. by Ensuring
  4. by ArrowAssoc
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Basic directives

  1. def cancelRejection(rejection: Rejection): Directive0

    Adds a TransformationRejection cancelling all rejections equal to the given one to the list of rejections potentially coming back from the inner route.

  2. def cancelRejections(cancelFilter: (Rejection) => Boolean): Directive0

    Adds a TransformationRejection cancelling all rejections for which the given filter function returns true to the list of rejections potentially coming back from the inner route.

  3. def cancelRejections(classes: Class[_]*): Directive0

    Adds a TransformationRejection cancelling all rejections of one of the given classes to the list of rejections potentially coming back from the inner route.

  4. def extract[T](f: (RequestContext) => T): Directive1[T]

    Extracts a single value using the given function.

  5. def extractActorSystem: Directive1[ActorSystem]

    Extracts the pekko.actor.ActorSystem if the available Materializer is an pekko.stream.ActorMaterializer.

    Extracts the pekko.actor.ActorSystem if the available Materializer is an pekko.stream.ActorMaterializer. Otherwise throws an exception as it won't be able to extract the system from arbitrary materializers.

  6. def extractDataBytes: Directive1[Source[ByteString, Any]]

    Extracts the entities dataBytes pekko.stream.scaladsl.Source from the pekko.http.scaladsl.server.RequestContext.

  7. def extractExecutionContext: Directive1[ExecutionContextExecutor]

    Extracts the scala.concurrent.ExecutionContextExecutor from the pekko.http.scaladsl.server.RequestContext.

  8. def extractLog: Directive1[LoggingAdapter]

    Extracts the pekko.event.LoggingAdapter from the pekko.http.scaladsl.server.RequestContext.

  9. def extractMatchedPath: Directive1[Path]

    Extracts the already matched path from the RequestContext.

  10. def extractMaterializer: Directive1[Materializer]

    Extracts the pekko.stream.Materializer from the pekko.http.scaladsl.server.RequestContext.

  11. def extractParserSettings: Directive1[ParserSettings]

    Extracts the pekko.http.scaladsl.settings.ParserSettings from the pekko.http.scaladsl.server.RequestContext.

  12. def extractRequest: Directive1[HttpRequest]

    Extracts the current HttpRequest instance.

  13. def extractRequestContext: Directive1[RequestContext]

    Extracts the pekko.http.scaladsl.server.RequestContext itself.

  14. def extractRequestEntity: Directive1[RequestEntity]

    Extracts the pekko.http.scaladsl.model.RequestEntity from the pekko.http.scaladsl.server.RequestContext.

  15. def extractSettings: Directive1[RoutingSettings]

    Extracts the RoutingSettings from the pekko.http.scaladsl.server.RequestContext.

  16. def extractStrictEntity(timeout: FiniteDuration, maxBytes: Long): Directive1[Strict]

    WARNING: This will read the entire request entity into memory and effectively disable streaming.

    WARNING: This will read the entire request entity into memory and effectively disable streaming.

    To help protect against excessive memory use, the request will be aborted if the request is larger than allowed by the pekko.http.parsing.max-to-strict-bytes configuration setting.

    Converts the HttpEntity from the pekko.http.scaladsl.server.RequestContext into an pekko.http.scaladsl.model.HttpEntity.Strict and extracts it, or fails the route if unable to drain the entire request body within the timeout.

    timeout

    The directive is failed if the stream isn't completed after the given timeout.

  17. def extractStrictEntity(timeout: FiniteDuration): Directive1[Strict]

    WARNING: This will read the entire request entity into memory and effectively disable streaming.

    WARNING: This will read the entire request entity into memory and effectively disable streaming.

    To help protect against excessive memory use, the request will be aborted if the request is larger than allowed by the pekko.http.parsing.max-to-strict-bytes configuration setting.

    Converts the HttpEntity from the pekko.http.scaladsl.server.RequestContext into an pekko.http.scaladsl.model.HttpEntity.Strict and extracts it, or fails the route if unable to drain the entire request body within the timeout.

    timeout

    The directive is failed if the stream isn't completed after the given timeout.

  18. def extractUnmatchedPath: Directive1[Path]

    Extracts the yet unmatched path from the RequestContext.

  19. def extractUri: Directive1[Uri]

    Extracts the complete request URI.

  20. def mapInnerRoute(f: (Route) => Route): Directive0

  21. def mapRejections(f: (Seq[Rejection]) => Seq[Rejection]): Directive0

  22. def mapRequest(f: (HttpRequest) => HttpRequest): Directive0

  23. def mapRequestContext(f: (RequestContext) => RequestContext): Directive0

  24. def mapResponse(f: (HttpResponse) => HttpResponse): Directive0

  25. def mapResponseEntity(f: (ResponseEntity) => ResponseEntity): Directive0

  26. def mapResponseHeaders(f: (Seq[HttpHeader]) => Seq[HttpHeader]): Directive0

  27. def mapRouteResult(f: (RouteResult) => RouteResult): Directive0

  28. def mapRouteResultFuture(f: (Future[RouteResult]) => Future[RouteResult]): Directive0

  29. def mapRouteResultPF(f: PartialFunction[RouteResult, RouteResult]): Directive0

  30. def mapRouteResultWith(f: (RouteResult) => Future[RouteResult]): Directive0

  31. def mapRouteResultWithPF(f: PartialFunction[RouteResult, Future[RouteResult]]): Directive0

  32. def mapSettings(f: (RoutingSettings) => RoutingSettings): Directive0

    Runs the inner route with settings mapped by the given function.

  33. def mapUnmatchedPath(f: (Path) => Path): Directive0

    Transforms the unmatchedPath of the RequestContext using the given function.

  34. def pass: Directive0

    A Directive0 that always passes the request on to its inner route (i.e.

    A Directive0 that always passes the request on to its inner route (i.e. does nothing with the request or the response).

  35. def provide[T](value: T): Directive1[T]

    Injects the given value into a directive.

  36. def recoverRejections(f: (Seq[Rejection]) => RouteResult): Directive0

  37. def recoverRejectionsWith(f: (Seq[Rejection]) => Future[RouteResult]): Directive0

  38. def textract[L](f: (RequestContext) => L)(implicit arg0: Tuple[L]): Directive[L]

    Extracts a number of values using the given function.

  39. def toStrictEntity(timeout: FiniteDuration, maxBytes: Long): Directive0

    WARNING: This will read the entire request entity into memory and effectively disable streaming.

    WARNING: This will read the entire request entity into memory and effectively disable streaming.

    To help protect against excessive memory use, the request will be aborted if the request is larger than allowed by the pekko.http.parsing.max-to-strict-bytes configuration setting.

    Extracts the pekko.http.scaladsl.server.RequestContext itself with the strict HTTP entity, or fails the route if unable to drain the entire request body within the timeout.

    timeout

    The directive is failed if the stream isn't completed after the given timeout.

  40. def toStrictEntity(timeout: FiniteDuration): Directive0

    WARNING: This will read the entire request entity into memory and effectively disable streaming.

    WARNING: This will read the entire request entity into memory and effectively disable streaming.

    To help protect against excessive memory use, the request will be aborted if the request is larger than allowed by the pekko.http.parsing.max-to-strict-bytes configuration setting.

    Extracts the pekko.http.scaladsl.server.RequestContext itself with the strict HTTP entity, or fails the route if unable to drain the entire request body within the timeout.

    timeout

    The directive is failed if the stream isn't completed after the given timeout.

  41. def tprovide[L](values: L)(implicit arg0: Tuple[L]): Directive[L]

    Injects the given values into a directive.

  42. def withExecutionContext(ec: ExecutionContextExecutor): Directive0

    Runs its inner route with the given alternative scala.concurrent.ExecutionContextExecutor.

  43. def withLog(log: LoggingAdapter): Directive0

    Runs its inner route with the given alternative pekko.event.LoggingAdapter.

  44. def withMaterializer(materializer: Materializer): Directive0

    Runs its inner route with the given alternative pekko.stream.Materializer.

  45. def withSettings(settings: RoutingSettings): Directive0

    Runs its inner route with the given alternative RoutingSettings.