mapRejections

mapRejections

Description

Low level directive – unless you're sure you need to be working on this low-level you might instead want to try the handleRejections directive which provides a nicer DSL for building rejection handlers.

The mapRejections directive is used as a building block for Custom Directives to transform a list of rejections from the inner route to a new list of rejections.

See Transforming the Response for similar directives.

Example

// ignore any rejections and replace them by AuthorizationFailedRejection
final Route route = mapRejections(
  rejections -> Collections.singletonList((Rejection) Rejections.authorizationFailed()),
  () -> path("abc", () -> complete("abc"))
);

// tests:
runRouteUnSealed(route, HttpRequest.GET("/"))
  .assertRejections(Rejections.authorizationFailed());
testRoute(route).run(HttpRequest.GET("/abc"))
  .assertStatusCode(StatusCodes.OK);

Contents