インターフェース RouterFunctions.Builder
- 含まれているクラス:
RouterFunctions
RouterFunctions.route() 経由で取得します。- 導入:
- 5.2
- 作成者:
- Arjen Poutsma, Sebastien Deleuze, Rossen Stoyanchev
方法の概要
修飾子と型メソッド説明<T extends ServerResponse>
RouterFunctions.Builderadd(RouterFunction<T> routerFunction) 指定されたルートをこのビルダーに追加します。<T extends ServerResponse, R extends ServerResponse>
RouterFunctions.Builderafter(BiFunctionSE<ServerRequest, T, R> responseProcessor) 指定されたレスポンス処理関数を使用して、このビルダーによって作成されたすべてのルートのレスポンスオブジェクトをフィルターに掛けます。before(FunctionSE<ServerRequest, ServerRequest> requestProcessor) 指定されたリクエスト処理関数を使用して、このビルダーによって作成されたすべてのルートのリクエストオブジェクトをフィルタリングします。build()RouterFunctionをビルドします。<T extends ServerResponse>
RouterFunctions.BuilderDELETE(StringSE pattern, HandlerFunction<T> handlerFunction) 指定されたパターンに一致するすべての HTTPDELETEリクエストを処理する指定されたハンドラー関数にルートを追加します。<T extends ServerResponse>
RouterFunctions.BuilderDELETE(StringSE pattern, RequestPredicate predicate, HandlerFunction<T> handlerFunction) 指定されたパターンと述語に一致するすべての HTTPDELETEリクエストを処理する指定されたハンドラー関数にルートを追加します。<T extends ServerResponse>
RouterFunctions.BuilderDELETE(HandlerFunction<T> handlerFunction) HTTPDELETEリクエストを処理する指定されたハンドラー関数にルートを追加します。<T extends ServerResponse>
RouterFunctions.BuilderDELETE(RequestPredicate predicate, HandlerFunction<T> handlerFunction) 指定された述語に一致するすべての HTTPDELETEリクエストを処理する指定されたハンドラー関数にルートを追加します。<T extends ServerResponse, R extends ServerResponse>
RouterFunctions.Builderfilter(HandlerFilterFunction<T, R> filterFunction) このビルダーによって作成されたすべてのルートを、指定されたフィルター関数でフィルターします。<T extends ServerResponse>
RouterFunctions.BuilderGET(StringSE pattern, HandlerFunction<T> handlerFunction) 指定されたパターンに一致するすべての HTTPGETリクエストを処理する指定されたハンドラー関数にルートを追加します。<T extends ServerResponse>
RouterFunctions.BuilderGET(StringSE pattern, RequestPredicate predicate, HandlerFunction<T> handlerFunction) 指定されたパターンと述語に一致するすべての HTTPGETリクエストを処理する指定されたハンドラー関数にルートを追加します。<T extends ServerResponse>
RouterFunctions.BuilderGET(HandlerFunction<T> handlerFunction) HTTPGETリクエストを処理する指定されたハンドラー関数にルートを追加します。<T extends ServerResponse>
RouterFunctions.BuilderGET(RequestPredicate predicate, HandlerFunction<T> handlerFunction) 指定された述語に一致するすべての HTTPGETリクエストを処理する指定されたハンドラー関数にルートを追加します。<T extends ServerResponse>
RouterFunctions.BuilderHEAD(StringSE pattern, HandlerFunction<T> handlerFunction) 指定されたパターンに一致するすべての HTTPHEADリクエストを処理する指定されたハンドラー関数にルートを追加します。<T extends ServerResponse>
RouterFunctions.BuilderHEAD(StringSE pattern, RequestPredicate predicate, HandlerFunction<T> handlerFunction) 指定されたパターンと述語に一致するすべての HTTPHEADリクエストを処理する指定されたハンドラー関数にルートを追加します。<T extends ServerResponse>
RouterFunctions.BuilderHEAD(HandlerFunction<T> handlerFunction) HTTPHEADリクエストを処理する指定されたハンドラー関数にルートを追加します。<T extends ServerResponse>
RouterFunctions.BuilderHEAD(RequestPredicate predicate, HandlerFunction<T> handlerFunction) 指定された述語に一致するすべての HTTPHEADリクエストを処理する指定されたハンドラー関数にルートを追加します。nest(RequestPredicate predicate, ConsumerSE<RouterFunctions.Builder> builderConsumer) 指定されたリクエスト述語が適用される場合、構築されたルーター関数にルーティングします。<T extends ServerResponse>
RouterFunctions.Buildernest(RequestPredicate predicate, SupplierSE<RouterFunction<T>> routerFunctionSupplier) 指定されたリクエスト述語が適用される場合、提供されたルーター関数にルーティングします。<T extends ServerResponse>
RouterFunctions.BuilderonError(ClassSE<? extends ThrowableSE> exceptionType, BiFunctionSE<ThrowableSE, ServerRequest, T> responseProvider) 指定されたレスポンスプロバイダー関数を適用することにより、指定された型のすべての例外をフィルターに掛けます。<T extends ServerResponse>
RouterFunctions.BuilderonError(PredicateSE<ThrowableSE> predicate, BiFunctionSE<ThrowableSE, ServerRequest, T> responseProvider) 指定されたレスポンスプロバイダー関数を適用することにより、述語に一致するすべての例外をフィルターに掛けます。<T extends ServerResponse>
RouterFunctions.BuilderOPTIONS(StringSE pattern, HandlerFunction<T> handlerFunction) 指定されたパターンに一致するすべての HTTPOPTIONSリクエストを処理する指定されたハンドラー関数にルートを追加します。<T extends ServerResponse>
RouterFunctions.BuilderOPTIONS(StringSE pattern, RequestPredicate predicate, HandlerFunction<T> handlerFunction) 指定されたパターンと述語に一致するすべての HTTPOPTIONSリクエストを処理する指定されたハンドラー関数にルートを追加します。<T extends ServerResponse>
RouterFunctions.BuilderOPTIONS(HandlerFunction<T> handlerFunction) HTTPOPTIONSリクエストを処理する指定されたハンドラー関数にルートを追加します。<T extends ServerResponse>
RouterFunctions.BuilderOPTIONS(RequestPredicate predicate, HandlerFunction<T> handlerFunction) 指定された述語に一致するすべての HTTPOPTIONSリクエストを処理する指定されたハンドラー関数にルートを追加します。<T extends ServerResponse>
RouterFunctions.BuilderPATCH(StringSE pattern, HandlerFunction<T> handlerFunction) 指定されたパターンに一致するすべての HTTPPATCHリクエストを処理する指定されたハンドラー関数にルートを追加します。<T extends ServerResponse>
RouterFunctions.BuilderPATCH(StringSE pattern, RequestPredicate predicate, HandlerFunction<T> handlerFunction) 指定されたパターンと述語に一致するすべての HTTPPATCHリクエストを処理する指定されたハンドラー関数にルートを追加します。<T extends ServerResponse>
RouterFunctions.BuilderPATCH(HandlerFunction<T> handlerFunction) HTTPPATCHリクエストを処理する指定されたハンドラー関数にルートを追加します。<T extends ServerResponse>
RouterFunctions.BuilderPATCH(RequestPredicate predicate, HandlerFunction<T> handlerFunction) 指定された述語に一致するすべての HTTPPATCHリクエストを処理する指定されたハンドラー関数にルートを追加します。path(StringSE pattern, ConsumerSE<RouterFunctions.Builder> builderConsumer) 指定されたパスプレフィックスパターンが適用される場合、構築されたルーター関数にルーティングします。<T extends ServerResponse>
RouterFunctions.Builderpath(StringSE pattern, SupplierSE<RouterFunction<T>> routerFunctionSupplier) 指定されたパスプレフィックスパターンが適用される場合は、提供されたルーター関数にルーティングします。<T extends ServerResponse>
RouterFunctions.BuilderPOST(StringSE pattern, HandlerFunction<T> handlerFunction) 指定されたパターンに一致するすべての HTTPPOSTリクエストを処理する指定されたハンドラー関数にルートを追加します。<T extends ServerResponse>
RouterFunctions.BuilderPOST(StringSE pattern, RequestPredicate predicate, HandlerFunction<T> handlerFunction) 指定されたパターンと述語に一致するすべての HTTPPOSTリクエストを処理する指定されたハンドラー関数にルートを追加します。<T extends ServerResponse>
RouterFunctions.BuilderPOST(HandlerFunction<T> handlerFunction) HTTPPOSTリクエストを処理する指定されたハンドラー関数にルートを追加します。<T extends ServerResponse>
RouterFunctions.BuilderPOST(RequestPredicate predicate, HandlerFunction<T> handlerFunction) 指定された述語に一致するすべての HTTPPOSTリクエストを処理する指定されたハンドラー関数にルートを追加します。<T extends ServerResponse>
RouterFunctions.BuilderPUT(StringSE pattern, HandlerFunction<T> handlerFunction) 指定されたパターンに一致するすべての HTTPPUTリクエストを処理する指定されたハンドラー関数にルートを追加します。<T extends ServerResponse>
RouterFunctions.BuilderPUT(StringSE pattern, RequestPredicate predicate, HandlerFunction<T> handlerFunction) 指定されたパターンと述語に一致するすべての HTTPPUTリクエストを処理する指定されたハンドラー関数にルートを追加します。<T extends ServerResponse>
RouterFunctions.BuilderPUT(HandlerFunction<T> handlerFunction) HTTPPUTリクエストを処理する指定されたハンドラー関数にルートを追加します。<T extends ServerResponse>
RouterFunctions.BuilderPUT(RequestPredicate predicate, HandlerFunction<T> handlerFunction) 指定された述語に一致するすべての HTTPPUTリクエストを処理する指定されたハンドラー関数にルートを追加します。resource(RequestPredicate predicate, Resource resource) 指定された述語に一致するリクエストを指定されたリソースにルーティングします。resource(RequestPredicate predicate, Resource resource, BiConsumerSE<Resource, HttpHeaders> headersConsumer) 指定された述語に一致するリクエストを指定されたリソースにルーティングします。指定されたパターンに一致するリクエストを、指定されたルートの場所を基準としたリソースにルーティングします。resources(StringSE pattern, Resource location, BiConsumerSE<Resource, HttpHeaders> headersConsumer) 指定されたパターンに一致するリクエストを、指定されたルートの場所を基準としたリソースにルーティングします。resources(FunctionSE<ServerRequest, OptionalSE<Resource>> lookupFunction) 提供された検索機能を使用してリソースにルーティングします。resources(FunctionSE<ServerRequest, OptionalSE<Resource>> lookupFunction, BiConsumerSE<Resource, HttpHeaders> headersConsumer) 提供された検索機能を使用してリソースにルーティングします。<T extends ServerResponse>
RouterFunctions.Builderroute(RequestPredicate predicate, HandlerFunction<T> handlerFunction) 指定された述語に一致するすべてのリクエストを処理する指定されたハンドラー関数にルートを追加します。withAttribute(StringSE name, ObjectSE value) このビルダーで作成された最後のルートに、指定された名前と値の属性を追加します。withAttributes(ConsumerSE<MapSE<StringSE, ObjectSE>> attributesConsumer) 最後に構築されたルートの属性を操作します。
メソッドの詳細
GET
HTTPGETリクエストを処理する指定されたハンドラー関数にルートを追加します。- 型パラメーター:
T- ハンドラー関数によって返されるレスポンスの型- パラメーター:
handlerFunction- すべてのGETリクエストのハンドラー- 戻り値:
- このビルダー
- 導入:
- 5.3
GET
<T extends ServerResponse> RouterFunctions.Builder GET(StringSE pattern, HandlerFunction<T> handlerFunction) 指定されたパターンに一致するすべての HTTPGETリクエストを処理する指定されたハンドラー関数にルートを追加します。- 型パラメーター:
T- ハンドラー関数によって返されるレスポンスの型- パラメーター:
pattern- 照合するパターンhandlerFunction-patternに一致するすべての GET リクエストのハンドラー- 戻り値:
- このビルダー
- 関連事項:
GET
<T extends ServerResponse> RouterFunctions.Builder GET(RequestPredicate predicate, HandlerFunction<T> handlerFunction) 指定された述語に一致するすべての HTTPGETリクエストを処理する指定されたハンドラー関数にルートを追加します。- 型パラメーター:
T- ハンドラー関数によって返されるレスポンスの型- パラメーター:
predicate- 一致する述語handlerFunction-predicateに一致するすべての GET リクエストのハンドラー- 戻り値:
- このビルダー
- 導入:
- 5.3
- 関連事項:
GET
<T extends ServerResponse> RouterFunctions.Builder GET(StringSE pattern, RequestPredicate predicate, HandlerFunction<T> handlerFunction) 指定されたパターンと述語に一致するすべての HTTPGETリクエストを処理する指定されたハンドラー関数にルートを追加します。たとえば、以下は JSON を受け入れる "/user" の GET リクエストを
userControllerのlistUsersメソッドにルーティングします。RouterFunction<ServerResponse> route = RouterFunctions.route() .GET("/user", RequestPredicates.accept(MediaType.APPLICATION_JSON), userController::listUsers) .build();- 型パラメーター:
T- ハンドラー関数によって返されるレスポンスの型- パラメーター:
pattern- 照合するパターンpredicate- 一致する追加の述語handlerFunction-patternおよび述語に一致するすべてのGETリクエストを処理するハンドラー関数- 戻り値:
- このビルダー
- 関連事項:
HEAD
HTTPHEADリクエストを処理する指定されたハンドラー関数にルートを追加します。- 型パラメーター:
T- ハンドラー関数によって返されるレスポンスの型- パラメーター:
handlerFunction- すべてのHEADリクエストのハンドラー- 戻り値:
- このビルダー
- 導入:
- 5.3
HEAD
<T extends ServerResponse> RouterFunctions.Builder HEAD(StringSE pattern, HandlerFunction<T> handlerFunction) 指定されたパターンに一致するすべての HTTPHEADリクエストを処理する指定されたハンドラー関数にルートを追加します。- 型パラメーター:
T- ハンドラー関数によって返されるレスポンスの型- パラメーター:
pattern- 照合するパターンhandlerFunction-patternに一致する HEAD リクエストのハンドラー- 戻り値:
- このビルダー
- 関連事項:
HEAD
<T extends ServerResponse> RouterFunctions.Builder HEAD(RequestPredicate predicate, HandlerFunction<T> handlerFunction) 指定された述語に一致するすべての HTTPHEADリクエストを処理する指定されたハンドラー関数にルートを追加します。- 型パラメーター:
T- ハンドラー関数によって返されるレスポンスの型- パラメーター:
predicate- 一致する述語handlerFunction-predicateに一致する HEAD リクエストのハンドラー- 戻り値:
- このビルダー
- 導入:
- 5.3
- 関連事項:
HEAD
<T extends ServerResponse> RouterFunctions.Builder HEAD(StringSE pattern, RequestPredicate predicate, HandlerFunction<T> handlerFunction) 指定されたパターンと述語に一致するすべての HTTPHEADリクエストを処理する指定されたハンドラー関数にルートを追加します。- 型パラメーター:
T- ハンドラー関数によって返されるレスポンスの型- パラメーター:
pattern- 照合するパターンpredicate- 一致する追加の述語handlerFunction-patternに一致する HEAD リクエストのハンドラー- 戻り値:
- このビルダー
- 関連事項:
POST
HTTPPOSTリクエストを処理する指定されたハンドラー関数にルートを追加します。- 型パラメーター:
T- ハンドラー関数によって返されるレスポンスの型- パラメーター:
handlerFunction- すべてのPOSTリクエストのハンドラー- 戻り値:
- このビルダー
- 導入:
- 5.3
POST
<T extends ServerResponse> RouterFunctions.Builder POST(StringSE pattern, HandlerFunction<T> handlerFunction) 指定されたパターンに一致するすべての HTTPPOSTリクエストを処理する指定されたハンドラー関数にルートを追加します。- 型パラメーター:
T- ハンドラー関数によって返されるレスポンスの型- パラメーター:
pattern- 照合するパターンhandlerFunction-patternに一致する POST リクエストのハンドラー- 戻り値:
- このビルダー
- 関連事項:
POST
<T extends ServerResponse> RouterFunctions.Builder POST(RequestPredicate predicate, HandlerFunction<T> handlerFunction) 指定された述語に一致するすべての HTTPPOSTリクエストを処理する指定されたハンドラー関数にルートを追加します。- 型パラメーター:
T- ハンドラー関数によって返されるレスポンスの型- パラメーター:
predicate- 一致する述語handlerFunction-predicateに一致する POST リクエストのハンドラー- 戻り値:
- このビルダー
- 導入:
- 5.3
- 関連事項:
POST
<T extends ServerResponse> RouterFunctions.Builder POST(StringSE pattern, RequestPredicate predicate, HandlerFunction<T> handlerFunction) 指定されたパターンと述語に一致するすべての HTTPPOSTリクエストを処理する指定されたハンドラー関数にルートを追加します。たとえば、以下は JSON を含む "/user" の POST リクエストを
userControllerのaddUserメソッドにルーティングします。RouterFunction<ServerResponse> route = RouterFunctions.route() .POST("/user", RequestPredicates.contentType(MediaType.APPLICATION_JSON), userController::addUser) .build();- 型パラメーター:
T- ハンドラー関数によって返されるレスポンスの型- パラメーター:
pattern- 照合するパターンpredicate- 一致する追加の述語handlerFunction-patternに一致するすべての POST リクエストのハンドラー- 戻り値:
- このビルダー
- 関連事項:
PUT
HTTPPUTリクエストを処理する指定されたハンドラー関数にルートを追加します。- 型パラメーター:
T- ハンドラー関数によって返されるレスポンスの型- パラメーター:
handlerFunction- すべてのPUTリクエストのハンドラー- 戻り値:
- このビルダー
- 導入:
- 5.3
PUT
<T extends ServerResponse> RouterFunctions.Builder PUT(StringSE pattern, HandlerFunction<T> handlerFunction) 指定されたパターンに一致するすべての HTTPPUTリクエストを処理する指定されたハンドラー関数にルートを追加します。- 型パラメーター:
T- ハンドラー関数によって返されるレスポンスの型- パラメーター:
pattern- 照合するパターンhandlerFunction-patternに一致するすべての PUT リクエストのハンドラー- 戻り値:
- このビルダー
- 関連事項:
PUT
<T extends ServerResponse> RouterFunctions.Builder PUT(RequestPredicate predicate, HandlerFunction<T> handlerFunction) 指定された述語に一致するすべての HTTPPUTリクエストを処理する指定されたハンドラー関数にルートを追加します。- 型パラメーター:
T- ハンドラー関数によって返されるレスポンスの型- パラメーター:
predicate- 一致する述語handlerFunction-predicateに一致する PUT リクエストのハンドラー- 戻り値:
- このビルダー
- 導入:
- 5.3
- 関連事項:
PUT
<T extends ServerResponse> RouterFunctions.Builder PUT(StringSE pattern, RequestPredicate predicate, HandlerFunction<T> handlerFunction) 指定されたパターンと述語に一致するすべての HTTPPUTリクエストを処理する指定されたハンドラー関数にルートを追加します。たとえば、以下は JSON を含む "/user" の PUT リクエストを
userControllerのeditUserメソッドにルーティングします。RouterFunction<ServerResponse> route = RouterFunctions.route() .PUT("/user", RequestPredicates.contentType(MediaType.APPLICATION_JSON), userController::editUser) .build();- 型パラメーター:
T- ハンドラー関数によって返されるレスポンスの型- パラメーター:
pattern- 照合するパターンpredicate- 一致する追加の述語handlerFunction-patternに一致する PUT リクエストのハンドラー- 戻り値:
- このビルダー
- 関連事項:
PATCH
HTTPPATCHリクエストを処理する指定されたハンドラー関数にルートを追加します。- 型パラメーター:
T- ハンドラー関数によって返されるレスポンスの型- パラメーター:
handlerFunction- すべてのPATCHリクエストのハンドラー- 戻り値:
- このビルダー
- 導入:
- 5.3
PATCH
<T extends ServerResponse> RouterFunctions.Builder PATCH(StringSE pattern, HandlerFunction<T> handlerFunction) 指定されたパターンに一致するすべての HTTPPATCHリクエストを処理する指定されたハンドラー関数にルートを追加します。- 型パラメーター:
T- ハンドラー関数によって返されるレスポンスの型- パラメーター:
pattern- 照合するパターンhandlerFunction-patternに一致する PATCH リクエストのハンドラー- 戻り値:
- このビルダー
- 関連事項:
PATCH
<T extends ServerResponse> RouterFunctions.Builder PATCH(RequestPredicate predicate, HandlerFunction<T> handlerFunction) 指定された述語に一致するすべての HTTPPATCHリクエストを処理する指定されたハンドラー関数にルートを追加します。- 型パラメーター:
T- ハンドラー関数によって返されるレスポンスの型- パラメーター:
predicate- 一致する述語handlerFunction-predicateに一致する PATCH リクエストのハンドラー- 戻り値:
- このビルダー
- 導入:
- 5.3
- 関連事項:
PATCH
<T extends ServerResponse> RouterFunctions.Builder PATCH(StringSE pattern, RequestPredicate predicate, HandlerFunction<T> handlerFunction) 指定されたパターンと述語に一致するすべての HTTPPATCHリクエストを処理する指定されたハンドラー関数にルートを追加します。たとえば、以下は JSON を含む "/user" の PATCH リクエストを
userControllerのeditUserメソッドにルーティングします。RouterFunction<ServerResponse> route = RouterFunctions.route() .PATCH("/user", RequestPredicates.contentType(MediaType.APPLICATION_JSON), userController::editUser) .build();- 型パラメーター:
T- ハンドラー関数によって返されるレスポンスの型- パラメーター:
pattern- 照合するパターンpredicate- 一致する追加の述語handlerFunction-patternに一致する PATCH リクエストのハンドラー- 戻り値:
- このビルダー
- 関連事項:
DELETE
HTTPDELETEリクエストを処理する指定されたハンドラー関数にルートを追加します。- 型パラメーター:
T- ハンドラー関数によって返されるレスポンスの型- パラメーター:
handlerFunction- すべてのDELETEリクエストのハンドラー- 戻り値:
- このビルダー
- 導入:
- 5.3
DELETE
<T extends ServerResponse> RouterFunctions.Builder DELETE(StringSE pattern, HandlerFunction<T> handlerFunction) 指定されたパターンに一致するすべての HTTPDELETEリクエストを処理する指定されたハンドラー関数にルートを追加します。- 型パラメーター:
T- ハンドラー関数によって返されるレスポンスの型- パラメーター:
pattern- 照合するパターンhandlerFunction-patternに一致する DELETE リクエストのハンドラー- 戻り値:
- このビルダー
- 関連事項:
DELETE
<T extends ServerResponse> RouterFunctions.Builder DELETE(RequestPredicate predicate, HandlerFunction<T> handlerFunction) 指定された述語に一致するすべての HTTPDELETEリクエストを処理する指定されたハンドラー関数にルートを追加します。- 型パラメーター:
T- ハンドラー関数によって返されるレスポンスの型- パラメーター:
predicate- 一致する述語handlerFunction-predicateに一致する DELETE リクエストのハンドラー- 戻り値:
- このビルダー
- 導入:
- 5.3
- 関連事項:
DELETE
<T extends ServerResponse> RouterFunctions.Builder DELETE(StringSE pattern, RequestPredicate predicate, HandlerFunction<T> handlerFunction) 指定されたパターンと述語に一致するすべての HTTPDELETEリクエストを処理する指定されたハンドラー関数にルートを追加します。- 型パラメーター:
T- ハンドラー関数によって返されるレスポンスの型- パラメーター:
pattern- 照合するパターンpredicate- 一致する追加の述語handlerFunction-patternに一致する DELETE リクエストのハンドラー- 戻り値:
- このビルダー
- 関連事項:
OPTIONS
HTTPOPTIONSリクエストを処理する指定されたハンドラー関数にルートを追加します。- 型パラメーター:
T- ハンドラー関数によって返されるレスポンスの型- パラメーター:
handlerFunction- OPTIONS リクエストのハンドラー- 戻り値:
- このビルダー
- 導入:
- 5.3
OPTIONS
<T extends ServerResponse> RouterFunctions.Builder OPTIONS(StringSE pattern, HandlerFunction<T> handlerFunction) 指定されたパターンに一致するすべての HTTPOPTIONSリクエストを処理する指定されたハンドラー関数にルートを追加します。- 型パラメーター:
T- ハンドラー関数によって返されるレスポンスの型- パラメーター:
pattern- 照合するパターンhandlerFunction-patternに一致する OPTIONS リクエストのハンドラー- 戻り値:
- このビルダー
- 関連事項:
OPTIONS
<T extends ServerResponse> RouterFunctions.Builder OPTIONS(RequestPredicate predicate, HandlerFunction<T> handlerFunction) 指定された述語に一致するすべての HTTPOPTIONSリクエストを処理する指定されたハンドラー関数にルートを追加します。- 型パラメーター:
T- ハンドラー関数によって返されるレスポンスの型- パラメーター:
predicate- 一致する述語handlerFunction-predicateに一致する OPTIONS リクエストのハンドラー- 戻り値:
- このビルダー
- 導入:
- 5.3
- 関連事項:
OPTIONS
<T extends ServerResponse> RouterFunctions.Builder OPTIONS(StringSE pattern, RequestPredicate predicate, HandlerFunction<T> handlerFunction) 指定されたパターンと述語に一致するすべての HTTPOPTIONSリクエストを処理する指定されたハンドラー関数にルートを追加します。- 型パラメーター:
T- ハンドラー関数によって返されるレスポンスの型- パラメーター:
pattern- 照合するパターンpredicate- 一致する追加の述語handlerFunction-patternに一致する OPTIONS リクエストのハンドラー- 戻り値:
- このビルダー
- 関連事項:
route
<T extends ServerResponse> RouterFunctions.Builder route(RequestPredicate predicate, HandlerFunction<T> handlerFunction) 指定された述語に一致するすべてのリクエストを処理する指定されたハンドラー関数にルートを追加します。- 型パラメーター:
T- ハンドラー関数によって返されるレスポンスの型- パラメーター:
predicate- 一致するリクエスト述語handlerFunction- 述語に一致するすべてのリクエストのハンドラー- 戻り値:
- このビルダー
- 関連事項:
add
指定されたルートをこのビルダーに追加します。外部で定義されたルーター関数をこのビルダーにマージするために使用できます。または、RouterFunctions.route(RequestPredicate, HandlerFunction)と組み合わせて、より柔軟な述語マッチングを可能にすることができます。たとえば、以下は、
OrderController.routerFunction()から返されたルーター関数をuserControllerのchangeUserメソッドに追加します。RouterFunction<ServerResponse> route = RouterFunctions.route() .GET("/users", userController::listUsers) .add(orderController.routerFunction()); .build();- 型パラメーター:
T- ハンドラー関数によって返されるレスポンスの型- パラメーター:
routerFunction- 追加するルーター関数- 戻り値:
- このビルダー
- 関連事項:
resource
指定された述語に一致するリクエストを指定されたリソースにルーティングします。例:Resource resource = new ClassPathResource("static/index.html") RouterFunction<ServerResponse> resources = RouterFunctions.resource(path("/api/**").negate(), resource);- パラメーター:
predicate- 一致する述語resource- 提供するリソース- 戻り値:
- リソースにルーティングするルーター関数
- 導入:
- 6.1.4
resource
RouterFunctions.Builder resource(RequestPredicate predicate, Resource resource, BiConsumerSE<Resource, HttpHeaders> headersConsumer) 指定された述語に一致するリクエストを指定されたリソースにルーティングします。例:Resource resource = new ClassPathResource("static/index.html") RouterFunction<ServerResponse> resources = RouterFunctions.resource(path("/api/**").negate(), resource);- パラメーター:
predicate- 一致する述語resource- 提供するリソースheadersConsumer- 提供されるリソースの HTTP ヘッダーへのアクセスを提供します- 戻り値:
- リソースにルーティングするルーター関数
- 導入:
- 6.1.4
resources
指定されたパターンに一致するリクエストを、指定されたルートロケーションを基準としたリソースにルーティングします。例:Resource location = new FileUrlResource("public-resources/"); RouterFunction<ServerResponse> resources = RouterFunctions.resources("/resources/**", location);- パラメーター:
pattern- マッチングするパターンlocation- リソースを解決する必要のある場所のディレクトリ- 戻り値:
- このビルダー
- 関連事項:
resources
RouterFunctions.Builder resources(StringSE pattern, Resource location, BiConsumerSE<Resource, HttpHeaders> headersConsumer) 指定されたパターンに一致するリクエストを、指定されたルートロケーションを基準としたリソースにルーティングします。例:Resource location = new FileUrlResource("public-resources/"); RouterFunction<ServerResponse> resources = RouterFunctions.resources("/resources/**", location);- パラメーター:
pattern- マッチングするパターンlocation- リソースを解決する必要のある場所のディレクトリheadersConsumer- 提供されるリソースの HTTP ヘッダーへのアクセスを提供します- 戻り値:
- このビルダー
- 導入:
- 6.1
- 関連事項:
resources
提供された検索機能を使用してリソースにルーティングします。ルックアップ関数が指定されたリクエストにResourceを提供する場合、GET、HEAD、OPTIONS リクエストを処理するHandlerFunctionを使用して公開されます。- パラメーター:
lookupFunction-Resourceを提供する機能- 戻り値:
- このビルダー
resources
RouterFunctions.Builder resources(FunctionSE<ServerRequest, OptionalSE<Resource>> lookupFunction, BiConsumerSE<Resource, HttpHeaders> headersConsumer) 提供された検索機能を使用してリソースにルーティングします。ルックアップ関数が指定されたリクエストにResourceを提供する場合、GET、HEAD、OPTIONS リクエストを処理するHandlerFunctionを使用して公開されます。- パラメーター:
lookupFunction-Resourceを提供する機能headersConsumer- 提供されるリソースの HTTP ヘッダーへのアクセスを提供します- 戻り値:
- このビルダー
- 導入:
- 6.1
nest
<T extends ServerResponse> RouterFunctions.Builder nest(RequestPredicate predicate, SupplierSE<RouterFunction<T>> routerFunctionSupplier) 指定されたリクエスト述語が適用される場合、提供されたルーター関数にルーティングします。このメソッドを使用して、ネストされたルートを作成できます。ルートのグループは、共通のパス(プレフィックス)、ヘッダー、その他のリクエスト述語を共有します。たとえば、以下は "/user" パス述語を持つネストされたルートを作成し、"/user" の GET リクエストでユーザーがリストされ、"/user" の POST リクエストで新しいユーザーが作成されるようにしています。
RouterFunction<ServerResponse> nestedRoute = RouterFunctions.route() .nest(RequestPredicates.path("/user"), () -> RouterFunctions.route() .GET(this::listUsers) .POST(this::createUser) .build()) .build();- 型パラメーター:
T- ハンドラー関数によって返されるレスポンスの型- パラメーター:
predicate- テストする述語routerFunctionSupplier- 述語が適用される場合に委譲するネストされたルーター関数のサプライヤー- 戻り値:
- このビルダー
- 関連事項:
nest
RouterFunctions.Builder nest(RequestPredicate predicate, ConsumerSE<RouterFunctions.Builder> builderConsumer) 指定されたリクエスト述語が適用される場合、構築されたルーター関数にルーティングします。このメソッドを使用して、ネストされたルートを作成できます。ルートのグループは、共通のパス(プレフィックス)、ヘッダー、その他のリクエスト述語を共有します。たとえば、以下は "/user" パス述語を持つネストされたルートを作成し、"/user" の GET リクエストでユーザーがリストされ、"/user" の POST リクエストで新しいユーザーが作成されるようにしています。
RouterFunction<ServerResponse> nestedRoute = RouterFunctions.route() .nest(RequestPredicates.path("/user"), builder -> builder.GET(this::listUsers).POST(this::createUser)) .build();- パラメーター:
predicate- テストする述語builderConsumer- ネストされたルーター関数を提供するBuilderのコンシューマー- 戻り値:
- このビルダー
- 関連事項:
path
<T extends ServerResponse> RouterFunctions.Builder path(StringSE pattern, SupplierSE<RouterFunction<T>> routerFunctionSupplier) 指定されたパスプレフィックスパターンが適用される場合は、提供されたルーター関数にルーティングします。このメソッドを使用すると、ルートのグループが共通のパスプレフィックスを共有するネストされたルートを作成できます。具体的には、このメソッドを使用して、外部で定義されたルーター関数をパス接頭辞にマージできます。たとえば、以下は、
userControllerで定義されたルーター関数に委譲する "/user" パス述語と、orderControllerに委譲する "/order" パスを持つネストされたルートを作成します。RouterFunction<ServerResponse> nestedRoute = RouterFunctions.route() .path("/user", userController::routerFunction) .path("/order", orderController::routerFunction) .build();- 型パラメーター:
T- ハンドラー関数によって返されるレスポンスの型- パラメーター:
pattern- 照合するパターンrouterFunctionSupplier- パターンが一致する場合に委譲するネストされたルーター関数のサプライヤー- 戻り値:
- このビルダー
- 関連事項:
path
指定されたパスプレフィックスパターンが適用される場合、構築されたルーター関数にルーティングします。このメソッドを使用すると、ルートのグループが共通のパスプレフィックスを共有するネストされたルートを作成できます。たとえば、以下は "/user" パス述語を持つネストされたルートを作成し、"/user" の GET リクエストでユーザーがリストされ、"/user" の POST リクエストで新しいユーザーが作成されるようにしています。
RouterFunction<ServerResponse> nestedRoute = RouterFunctions.route() .path("/user", builder -> builder.GET(this::listUsers).POST(this::createUser)) .build();- パラメーター:
pattern- 照合するパターンbuilderConsumer- ネストされたルーター関数を提供するBuilderのコンシューマー- 戻り値:
- このビルダー
- 関連事項:
filter
<T extends ServerResponse, R extends ServerResponse> RouterFunctions.Builder filter(HandlerFilterFunction<T, R> filterFunction) このビルダーによって作成されたすべてのルートを、指定されたフィルター関数でフィルターします。フィルター機能は通常、ロギング、セキュリティなどの横断的問題に対処するために使用されます。たとえば、以下は、リクエストに必要な認証ヘッダーが含まれていない場合に 401 Unauthorized レスポンスを返すフィルターを作成します。
RouterFunction<ServerResponse> filteredRoute = RouterFunctions.route() .GET("/user", this::listUsers) .filter((request, next) -> { // check for authentication headers if (isAuthenticated(request)) { return next.handle(request); } else { return ServerResponse.status(HttpStatus.UNAUTHORIZED).build(); } }) .build();- 型パラメーター:
T- フィルタリングするハンドラー関数の型R- 関数によって返されるレスポンスの種類- パラメーター:
filterFunction- このビルダーによって作成されたすべてのルートをフィルタリングする関数- 戻り値:
- このビルダー
before
指定されたリクエスト処理関数を使用して、このビルダーによって作成されたすべてのルートのリクエストオブジェクトをフィルタリングします。フィルターは通常、ロギング、セキュリティなどの横断的問題に対処するために使用されます。たとえば、次の例では、ハンドラー関数が実行される前にリクエストをログに記録するフィルターを作成します。
RouterFunction<ServerResponse> filteredRoute = RouterFunctions.route() .GET("/user", this::listUsers) .before(request -> { log(request); return request; }) .build();- パラメーター:
requestProcessor- リクエストを変換する関数- 戻り値:
- このビルダー
after
<T extends ServerResponse, R extends ServerResponse> RouterFunctions.Builder after(BiFunctionSE<ServerRequest, T, R> responseProcessor) 指定されたレスポンス処理関数を使用して、このビルダーによって作成されたすべてのルートのレスポンスオブジェクトをフィルターに掛けます。フィルターは通常、ロギング、セキュリティなどの横断的問題に対処するために使用されます。たとえば、次の例では、ハンドラー関数の実行後にレスポンスをログに記録するフィルターを作成します。
RouterFunction<ServerResponse> filteredRoute = RouterFunctions.route() .GET("/user", this::listUsers) .after((request, response) -> { log(response); return response; }) .build();- 型パラメーター:
T- フィルタリングするハンドラー関数の型R- 関数によって返されるレスポンスの種類- パラメーター:
responseProcessor- レスポンスを変換する関数- 戻り値:
- このビルダー
onError
<T extends ServerResponse> RouterFunctions.Builder onError(PredicateSE<ThrowableSE> predicate, BiFunctionSE<ThrowableSE, ServerRequest, T> responseProvider) 指定されたレスポンスプロバイダー関数を適用することにより、述語に一致するすべての例外をフィルターに掛けます。たとえば、次の例では、
IllegalStateExceptionが発生したときに 500 レスポンスステータスを返すフィルターを作成します。RouterFunction<ServerResponse> filteredRoute = RouterFunctions.route() .GET("/user", this::listUsers) .onError(e -> e instanceof IllegalStateException, (e, request) -> ServerResponse.status(HttpStatus.INTERNAL_SERVER_ERROR).build()) .build();- 型パラメーター:
T- ハンドラー関数によって返されるレスポンスの型- パラメーター:
predicate- フィルタリングする例外の型responseProvider- レスポンスを作成する関数- 戻り値:
- このビルダー
onError
<T extends ServerResponse> RouterFunctions.Builder onError(ClassSE<? extends ThrowableSE> exceptionType, BiFunctionSE<ThrowableSE, ServerRequest, T> responseProvider) 指定されたレスポンスプロバイダー関数を適用することにより、指定された型のすべての例外をフィルターに掛けます。たとえば、次の例では、
IllegalStateExceptionが発生したときに 500 レスポンスステータスを返すフィルターを作成します。RouterFunction<ServerResponse> filteredRoute = RouterFunctions.route() .GET("/user", this::listUsers) .onError(IllegalStateException.class, (e, request) -> ServerResponse.status(HttpStatus.INTERNAL_SERVER_ERROR).build()) .build();- 型パラメーター:
T- ハンドラー関数によって返されるレスポンスの型- パラメーター:
exceptionType- フィルタリングする例外の型responseProvider- レスポンスを作成する関数- 戻り値:
- このビルダー
withAttribute
このビルダーで作成された最後のルートに、指定された名前と値の属性を追加します。- パラメーター:
name- 属性名value- 属性値- 戻り値:
- このビルダー
- 導入:
- 5.3
withAttributes
build
RouterFunction<ServerResponse> build()RouterFunctionをビルドします。作成されたすべてのルートは互いに構成され、フィルター(存在する場合)が結果に適用されます。- 戻り値:
- 内蔵ルーター関数