mapRouteResultWith
シグネチャ
説明
内部ルートがレスポンダに送信するメッセージを変更します。
`` mapRouteResult``ディレクティブは Custom Directives のビルディングブロックとして使用され、内部ルートから戻る:ref:RouteResult`を変換します。 :ref: `-mapRouteResult-`ディレクティブに似ていますが、結果の代わりに` Future``を返します。これは、実行時間の長い変換に便利です。
同様のディレクティブは:ref:`Result Transformation Directives`を参照してください。
例
case object MyCustomRejection extends Rejection
val rejectRejections = // not particularly useful directive
mapRouteResultWith {
case Rejected(_) => Future(Rejected(List(AuthorizationFailedRejection)))
case res => Future(res)
}
val route =
rejectRejections {
reject(MyCustomRejection)
}
// tests:
Get("/") ~> route ~> check {
rejection shouldEqual AuthorizationFailedRejection
}
Contents