T - the type of the handler function to route to@FunctionalInterface public interface RouterFunction<T extends ServerResponse>
RouterFunctions| Modifier and Type | Method and Description |
|---|---|
default void |
accept(RouterFunctions.Visitor visitor)
Accept the given visitor.
|
default RouterFunction<T> |
and(RouterFunction<T> other)
Return a composed routing function that first invokes this function,
and then invokes the
other function (of the same response type T)
if this route had no result. |
default RouterFunction<T> |
andNest(RequestPredicate predicate,
RouterFunction<T> routerFunction)
Return a composed routing function that routes to the given router function if this
route does not match and the given request predicate applies.
|
default RouterFunction<?> |
andOther(RouterFunction<?> other)
Return a composed routing function that first invokes this function,
and then invokes the
other function (of a different response type) if this route had
no result. |
default RouterFunction<T> |
andRoute(RequestPredicate predicate,
HandlerFunction<T> handlerFunction)
Return a composed routing function that routes to the given handler function if this
route does not match and the given request predicate applies.
|
default <S extends ServerResponse> |
filter(HandlerFilterFunction<T,S> filterFunction)
Filter all handler functions routed by this function with the given
filter function.
|
Optional<HandlerFunction<T>> |
route(ServerRequest request)
Return the handler function that matches the given request.
|
default RouterFunction<T> |
withAttribute(String name,
Object value)
Return a new routing function with the given attribute.
|
default RouterFunction<T> |
withAttributes(Consumer<Map<String,Object>> attributesConsumer)
Return a new routing function with attributes manipulated with the given consumer.
|
Optional<HandlerFunction<T>> route(ServerRequest request)
request - the request to routeOptional describing the HandlerFunction that matches this request,
or an empty Optional if there is no matchdefault RouterFunction<T> and(RouterFunction<T> other)
other function (of the same response type T)
if this route had no result.other - the function of type T to apply when this function has no resultother function if this function has no resultandOther(RouterFunction)default RouterFunction<?> andOther(RouterFunction<?> other)
other function (of a different response type) if this route had
no result.other - the function to apply when this function has no resultother function if this function has no resultand(RouterFunction)default RouterFunction<T> andRoute(RequestPredicate predicate, HandlerFunction<T> handlerFunction)
and(RouterFunction) and
RouterFunctions.route(RequestPredicate, HandlerFunction).predicate - the predicate to test if this route does not matchhandlerFunction - the handler function to route to if this route does not match and
the predicate applieshandlerFunction if this route does not
match and if predicate appliesdefault RouterFunction<T> andNest(RequestPredicate predicate, RouterFunction<T> routerFunction)
and(RouterFunction) and
RouterFunctions.nest(RequestPredicate, RouterFunction).predicate - the predicate to test if this route does not matchrouterFunction - the router function to route to if this route does not match and
the predicate appliesrouterFunction if this route does not
match and if predicate appliesdefault <S extends ServerResponse> RouterFunction<S> filter(HandlerFilterFunction<T,S> filterFunction)
S - the filter return typefilterFunction - the filter to applydefault void accept(RouterFunctions.Visitor visitor)
RouterFunctions.Visitor.unknown(RouterFunction); composed RouterFunction
implementations are expected to call accept for all components that make up this
router function.visitor - the visitor to acceptdefault RouterFunction<T> withAttribute(String name, Object value)
name - the attribute namevalue - the attribute valuedefault RouterFunction<T> withAttributes(Consumer<Map<String,Object>> attributesConsumer)
The map provided to the consumer is "live", so that the consumer can be used
to overwrite existing attributes,
remove attributes, or use any of the other
Map methods.
attributesConsumer - a function that consumes the attributes map