Interface ErrorRouter<A extends ExchangeContext,B extends ErrorExchange<A>,C extends ErrorRouter<A,B,C,D,E,F,G,H>,D extends ErrorInterceptedRouter<A,B,C,D,E,F,G,H>,E extends ErrorRouteManager<A,B,C,E,H>,F extends ErrorRouteManager<A,B,D,F,H>,G extends ErrorInterceptorManager<A,B,D,G>,H extends InterceptableRoute<A,B>>

Type Parameters:
A - the type of the exchange context
B - the type of error exchange handled by the route
C - the error router type
D - the intercepted error router type
E - the error route manager type
F - the intercepted error route manager type
G - the error interceptor manager type
H - the interceptable route type
All Superinterfaces:
ExchangeHandler<A,ErrorExchange<A>>, Interceptable<A,B,D,G>, ReactiveExchangeHandler<A,ErrorExchange<A>>, Routable<A,B,C,E,H>
All Known Subinterfaces:
ErrorWebRouter<A>

public interface ErrorRouter<A extends ExchangeContext,B extends ErrorExchange<A>,C extends ErrorRouter<A,B,C,D,E,F,G,H>,D extends ErrorInterceptedRouter<A,B,C,D,E,F,G,H>,E extends ErrorRouteManager<A,B,C,E,H>,F extends ErrorRouteManager<A,B,D,F,H>,G extends ErrorInterceptorManager<A,B,D,G>,H extends InterceptableRoute<A,B>> extends Routable<A,B,C,E,H>, Interceptable<A,B,D,G>, ExchangeHandler<A,ErrorExchange<A>>

Base error router interface.

An error router uses route definitions to determine the error exchange handler to invoke in order to process an error.

Routes are defined in the router using an error route manager that allows to specify route criteria and eventually the error exchange handler to invoke to process an error that matches the criteria.

An error router is itself an error exchange handler that implements a routing logic to delegate the actual error exchange processing to the error exchange handler defined in the route matching the original request. An error router is typically used as error handler in a HTTP server.

Since:
1.3
Author:
Jeremy Kuhn
See Also: