@Singleton public class DefaultRouter extends java.lang.Object implements Router, HttpServerFilterResolver<RouteMatch<?>>
The default Router implementation. This implementation does not perform any additional caching of
 route discovery.
HttpFilterResolver.FilterEntry<F>| Constructor and Description | 
|---|
| DefaultRouter(java.util.Collection<RouteBuilder> builders)Construct a new router for the given route builders. | 
| DefaultRouter(RouteBuilder... builders)Construct a new router for the given route builders. | 
| Modifier and Type | Method and Description | 
|---|---|
| void | applyDefaultPorts(java.util.List<java.lang.Integer> ports)Sets the ports the application will listen to by default. | 
| <T,R> java.util.stream.Stream<UriRouteMatch<T,R>> | find(HttpMethod httpMethod,
    java.lang.CharSequence uri,
    HttpRequest<?> context)Finds all of the possible routes for the given HTTP method and URI. | 
| <T,R> java.util.stream.Stream<UriRouteMatch<T,R>> | find(HttpRequest<?> request)Finds all of the possible routes for the given HTTP request. | 
| <T,R> java.util.stream.Stream<UriRouteMatch<T,R>> | find(HttpRequest<?> request,
    java.lang.CharSequence uri)Find method, that should be used for non-standard http methods. | 
| <T,R> java.util.List<UriRouteMatch<T,R>> | findAllClosest(HttpRequest<?> request)Finds the closest match for the given request. | 
| <T,R> java.util.stream.Stream<UriRouteMatch<T,R>> | findAny(java.lang.CharSequence uri,
       HttpRequest<?> context)Find any  RouteMatchregardless of HTTP method. | 
| <R> java.util.Optional<RouteMatch<R>> | findErrorRoute(java.lang.Class<?> originatingClass,
              java.lang.Throwable error,
              HttpRequest<?> request)Match a route to an error. | 
| <R> java.util.Optional<RouteMatch<R>> | findErrorRoute(java.lang.Throwable error,
              HttpRequest<?> request)Match a route to an error. | 
| java.util.List<HttpFilter> | findFilters(HttpRequest<?> request)Build a filtered  Publisherfor an action. | 
| <R> java.util.Optional<RouteMatch<R>> | findStatusRoute(java.lang.Class<?> originatingClass,
               HttpStatus status,
               HttpRequest<?> request)Found a  RouteMatchfor the givenHttpStatuscode. | 
| <R> java.util.Optional<RouteMatch<R>> | findStatusRoute(HttpStatus status,
               HttpRequest<?> request)Found a  RouteMatchfor the givenHttpStatuscode. | 
| java.util.Set<java.lang.Integer> | getExposedPorts() | 
| java.util.List<HttpFilterResolver.FilterEntry<HttpFilter>> | resolveFilterEntries(RouteMatch<?> routeMatch)Resolves the initial list of filters. | 
| java.util.List<HttpFilter> | resolveFilters(HttpRequest<?> request,
              java.util.List<HttpFilterResolver.FilterEntry<HttpFilter>> filterEntries)Returns which filters should apply for the given request. | 
| <R> java.util.Optional<RouteMatch<R>> | route(java.lang.Class originatingClass,
     HttpStatus status)Found a  RouteMatchfor the givenHttpStatuscode. | 
| <R> java.util.Optional<RouteMatch<R>> | route(java.lang.Class originatingClass,
     java.lang.Throwable error)Match a route to an error. | 
| <T,R> java.util.Optional<UriRouteMatch<T,R>> | route(HttpMethod httpMethod,
     java.lang.CharSequence uri)Finds the first possible route for the given HTTP method and URI. | 
| <R> java.util.Optional<RouteMatch<R>> | route(HttpStatus status)Found a  RouteMatchfor the givenHttpStatuscode. | 
| <R> java.util.Optional<RouteMatch<R>> | route(java.lang.Throwable error)Match a route to an error. | 
| java.util.stream.Stream<UriRoute> | uriRoutes()Returns all UriRoutes. | 
public DefaultRouter(RouteBuilder... builders)
builders - The builders@Inject public DefaultRouter(java.util.Collection<RouteBuilder> builders)
builders - The builderspublic java.util.Set<java.lang.Integer> getExposedPorts()
getExposedPorts in interface Routerpublic void applyDefaultPorts(java.util.List<java.lang.Integer> ports)
RouterapplyDefaultPorts in interface Routerports - The default ports@NonNull public <T,R> java.util.stream.Stream<UriRouteMatch<T,R>> find(@NonNull HttpRequest<?> request, @NonNull java.lang.CharSequence uri)
RouterRouter.find(HttpMethod, CharSequence, HttpRequest)find in interface RouterT - The target type.R - The type of whatrequest - The request, that can have overridden HttpRequest.getMethodName()uri - The URI route match.Stream of possible Route instances.@NonNull public <T,R> java.util.stream.Stream<UriRouteMatch<T,R>> find(@NonNull HttpRequest<?> request)
Router@NonNull public <T,R> java.util.stream.Stream<UriRouteMatch<T,R>> find(@NonNull HttpMethod httpMethod, @NonNull java.lang.CharSequence uri, @Nullable HttpRequest<?> context)
Routerfind in interface RouterT - The target typeR - The typehttpMethod - The HTTP methoduri - The URI route matchcontext - The optional HttpRequest context information to apply RouteMatchFilter.Stream of possible Route instances.@NonNull public java.util.stream.Stream<UriRoute> uriRoutes()
Router@NonNull public <T,R> java.util.List<UriRouteMatch<T,R>> findAllClosest(@NonNull HttpRequest<?> request)
RouterfindAllClosest in interface RouterT - The target typeR - The typerequest - The requestList of possible Route instances.@NonNull public <T,R> java.util.Optional<UriRouteMatch<T,R>> route(@NonNull HttpMethod httpMethod, @NonNull java.lang.CharSequence uri)
Routerpublic <R> java.util.Optional<RouteMatch<R>> route(@NonNull HttpStatus status)
RouterRouteMatch for the given HttpStatus code.route in interface RouterR - The matched routestatus - The HTTP statusRouteMatchpublic <R> java.util.Optional<RouteMatch<R>> route(@NonNull java.lang.Class originatingClass, @NonNull HttpStatus status)
RouterRouteMatch for the given HttpStatus code.route in interface RouterR - The matched routeoriginatingClass - The class the error originates fromstatus - The HTTP statusRouteMatchpublic <R> java.util.Optional<RouteMatch<R>> route(@NonNull java.lang.Class originatingClass, @NonNull java.lang.Throwable error)
Routerroute in interface RouterR - The matched routeoriginatingClass - The class the error originates fromerror - The errorRouteMatchpublic <R> java.util.Optional<RouteMatch<R>> findErrorRoute(@NonNull java.lang.Class<?> originatingClass, @NonNull java.lang.Throwable error, HttpRequest<?> request)
RouterfindErrorRoute in interface RouterR - The matched routeoriginatingClass - The class the error originates fromerror - The errorrequest - The requestRouteMatchpublic <R> java.util.Optional<RouteMatch<R>> findErrorRoute(@NonNull java.lang.Throwable error, HttpRequest<?> request)
RouterfindErrorRoute in interface RouterR - The matched routeerror - The errorrequest - The requestRouteMatchpublic <R> java.util.Optional<RouteMatch<R>> findStatusRoute(@NonNull java.lang.Class<?> originatingClass, @NonNull HttpStatus status, HttpRequest<?> request)
RouterRouteMatch for the given HttpStatus code.findStatusRoute in interface RouterR - The matched routeoriginatingClass - The class the error originates fromstatus - The HTTP statusrequest - The requestRouteMatchpublic <R> java.util.Optional<RouteMatch<R>> findStatusRoute(@NonNull HttpStatus status, HttpRequest<?> request)
RouterRouteMatch for the given HttpStatus code.findStatusRoute in interface RouterR - The matched routestatus - The HTTP statusrequest - The requestRouteMatchpublic <R> java.util.Optional<RouteMatch<R>> route(@NonNull java.lang.Throwable error)
Routerroute in interface RouterR - The matched routeerror - The errorRouteMatch@NonNull public java.util.List<HttpFilter> findFilters(@NonNull HttpRequest<?> request)
RouterPublisher for an action.findFilters in interface Routerrequest - The request@NonNull public <T,R> java.util.stream.Stream<UriRouteMatch<T,R>> findAny(@NonNull java.lang.CharSequence uri, @Nullable HttpRequest<?> context)
RouterRouteMatch regardless of HTTP method.findAny in interface RouterT - The target typeR - The return typeuri - The URIcontext - The optional HttpRequest context information to apply RouteMatchFilter.public java.util.List<HttpFilterResolver.FilterEntry<HttpFilter>> resolveFilterEntries(RouteMatch<?> routeMatch)
HttpFilterResolverresolveFilterEntries in interface HttpFilterResolver<HttpFilter,RouteMatch<?>>routeMatch - The contextpublic java.util.List<HttpFilter> resolveFilters(HttpRequest<?> request, java.util.List<HttpFilterResolver.FilterEntry<HttpFilter>> filterEntries)
HttpFilterResolverresolveFilters in interface HttpFilterResolver<HttpFilter,RouteMatch<?>>request - The requestfilterEntries - the filter entries