Interface WebRouter<A extends ExchangeContext>

Type Parameters:
A - the exchange context type
All Superinterfaces:
BaseWebRouter
All Known Subinterfaces:
WebServer<A>, WebServer.Intercepted<A>

public interface WebRouter<A extends ExchangeContext> extends BaseWebRouter

Entry point for configuring the Web routes used to route Web exchanges to a matching Web exchange handlers.

It is implemented by the WebServer. Handlers are defined using a WebRouteManager or WebSocketRouteManager which allows to specify the criteria a Web exchange must match to be processed by the Web exchange handler defined in the route.

When defining a route, the Web route interceptors defined in an intercepted Web server and matching the route's criteria are applied to the Web exchange handler.

Since:
1.12
Author:
Jeremy Kuhn
See Also:
  • Method Details

    • route

      WebRouteManager<A,? extends WebRouter<A>> route()

      Returns a new route manager for defining a Web route.

      Returns:
      a new Web route manager
    • route

      default WebRouter<A> route(Consumer<WebRouteManager<A,? extends WebRouter<A>>> configurer)

      Configures a Web route and returns the originating Web router.

      Parameters:
      configurer - a Web route configurer function
      Returns:
      the originating Web router
    • webSocketRoute

      WebSocketRouteManager<A,? extends WebRouter<A>> webSocketRoute()

      Returns a new route manager for defining a WebSocket route.

      Returns:
      a new WebSocket route manager
    • webSocketRoute

      default WebRouter<A> webSocketRoute(Consumer<WebSocketRouteManager<A,? extends WebRouter<A>>> configurer)

      Configures a WebSocket route and returns the originating Web router.

      Parameters:
      configurer - a WebSocket route configurer function
      Returns:
      the originating Web router
    • configureRoutes

      WebRouter<A> configureRoutes(WebRouter.Configurer<? super A> configurer)

      Configures multiple Web routes or WebSocket routes and returns the originating Web router.

      Parameters:
      configurer - a Web route configurer
      Returns:
      the originating Web router
    • configureRoutes

      WebRouter<A> configureRoutes(List<WebRouter.Configurer<? super A>> configurers)

      Configures multiple Web routes or WebSocket routes and returns the originating Web router.

      Parameters:
      configurers - a list of Web route configurers
      Returns:
      the originating Web router
    • getRoutes

      Set<WebRoute<A>> getRoutes()

      Returns the Web routes defined in the router.

      Returns:
      a set of Web routes
    • getWebSocketRoutes

      Set<WebSocketRoute<A>> getWebSocketRoutes()

      Returns the WebSocket routes defined in the router.

      Returns:
      a set of WebSocket routes