mapRouteResultPF
Signature
Description
Partial Function version of mapRouteResult.
Changes the message the inner route sends to the responder.
The mapRouteResult
directive is used as a building block for Custom Directives to transform the
RouteResult coming back from the inner route. It's similar to the mapRouteResult directive but allows to
specify a partial function that doesn't have to handle all potential RouteResult
instances.
See Transforming the RouteResult for similar directives.
Example
case object MyCustomRejection extends Rejection
val rejectRejections = // not particularly useful directive
mapRouteResultPF {
case Rejected(_) => Rejected(List(AuthorizationFailedRejection))
}
val route =
rejectRejections {
reject(MyCustomRejection)
}
// tests:
Get("/") ~> route ~> check {
rejection shouldEqual AuthorizationFailedRejection
}
Contents