Package io.vertx.ext.web
Interface Router
-
- All Superinterfaces:
Handler<HttpServerRequest>
public interface Router extends Handler<HttpServerRequest>
A router receives request from anHttpServerand routes it to the first matchingRoutethat it contains. A router can contain many routes.Routers are also used for routing failures.
- Author:
- Tim Fox
-
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description RouterallowForward(AllowForwardHeaders allowForwardHeaders)Set whether the router should parse "forwarded"-type headersRouterclear()Remove all the routes from this routerRouteconnect()Add a route that matches any HTTP CONNECT requestRouteconnect(String path)Add a route that matches a HTTP CONNECT request and the specified pathRouteconnectWithRegex(String regex)Add a route that matches a HTTP CONNECT request and the specified path regexRoutedelete()Add a route that matches any HTTP DELETE requestRoutedelete(String path)Add a route that matches a HTTP DELETE request and the specified pathRoutedeleteWithRegex(String regex)Add a route that matches a HTTP DELETE request and the specified path regexRoutererrorHandler(int statusCode, Handler<RoutingContext> errorHandler)Specify an handler to handle an error for a particular status code.Routeget()Add a route that matches any HTTP GET requestRouteget(String path)Add a route that matches a HTTP GET request and the specified pathdefault <T> TgetMetadata(String key)Get some data from metadata.List<Route>getRoutes()RoutegetWithRegex(String regex)Add a route that matches a HTTP GET request and the specified path regexvoidhandleContext(RoutingContext context)Used to route a context to the router.voidhandleFailure(RoutingContext context)Used to route a failure to the router.Routehead()Add a route that matches any HTTP HEAD requestRoutehead(String path)Add a route that matches a HTTP HEAD request and the specified pathRouteheadWithRegex(String regex)Add a route that matches a HTTP HEAD request and the specified path regexMap<String,Object>metadata()RoutermodifiedHandler(Handler<Router> handler)When a Router routes are changed this handler is notified.Routeoptions()Add a route that matches any HTTP OPTIONS requestRouteoptions(String path)Add a route that matches a HTTP OPTIONS request and the specified pathRouteoptionsWithRegex(String regex)Add a route that matches a HTTP OPTIONS request and the specified path regexRoutepatch()Add a route that matches any HTTP PATCH requestRoutepatch(String path)Add a route that matches a HTTP PATCH request and the specified pathRoutepatchWithRegex(String regex)Add a route that matches a HTTP PATCH request and the specified path regexRoutepost()Add a route that matches any HTTP POST requestRoutepost(String path)Add a route that matches a HTTP POST request and the specified pathRoutepostWithRegex(String regex)Add a route that matches a HTTP POST request and the specified path regexRouteput()Add a route that matches any HTTP PUT requestRouteput(String path)Add a route that matches a HTTP PUT request and the specified pathRouterputMetadata(String key, Object value)Put metadata to this router.RouteputWithRegex(String regex)Add a route that matches a HTTP PUT request and the specified path regexRouteroute()Add a route with no matching criteria, i.e. it matches all requests or failures.Routeroute(HttpMethod method, String path)Add a route that matches the specified HTTP method and pathRouteroute(String path)Add a route that matches the specified pathstatic Routerrouter(Vertx vertx)Create a routerRouterouteWithRegex(HttpMethod method, String regex)Add a route that matches the specified HTTP method and path regexRouterouteWithRegex(String regex)Add a route that matches the specified path regexRoutetrace()Add a route that matches any HTTP TRACE requestRoutetrace(String path)Add a route that matches a HTTP TRACE request and the specified pathRoutetraceWithRegex(String regex)Add a route that matches a HTTP TRACE request and the specified path regex
-
-
-
Method Detail
-
putMetadata
Router putMetadata(String key, Object value)
Put metadata to this router. Used for saved extra data. Remove the existing value if value is null.- Parameters:
key- the metadata of keyvalue- the metadata of value- Returns:
- a reference to this, so the API can be used fluently
-
getMetadata
default <T> T getMetadata(String key)
Get some data from metadata.- Type Parameters:
T- the type of the data- Parameters:
key- the key for the metadata- Returns:
- the data
-
router
static Router router(Vertx vertx)
Create a router- Parameters:
vertx- the Vert.x instance- Returns:
- the router
-
route
Route route()
Add a route with no matching criteria, i.e. it matches all requests or failures.- Returns:
- the route
-
route
Route route(HttpMethod method, String path)
Add a route that matches the specified HTTP method and path- Parameters:
method- the HTTP method to matchpath- URI paths that begin with this path will match- Returns:
- the route
-
route
Route route(String path)
Add a route that matches the specified path- Parameters:
path- URI paths that begin with this path will match- Returns:
- the route
-
routeWithRegex
Route routeWithRegex(HttpMethod method, String regex)
Add a route that matches the specified HTTP method and path regex- Parameters:
method- the HTTP method to matchregex- URI paths that begin with a match for this regex will match- Returns:
- the route
-
routeWithRegex
Route routeWithRegex(String regex)
Add a route that matches the specified path regex- Parameters:
regex- URI paths that begin with a match for this regex will match- Returns:
- the route
-
get
Route get()
Add a route that matches any HTTP GET request- Returns:
- the route
-
get
Route get(String path)
Add a route that matches a HTTP GET request and the specified path- Parameters:
path- URI paths that begin with this path will match- Returns:
- the route
-
getWithRegex
Route getWithRegex(String regex)
Add a route that matches a HTTP GET request and the specified path regex- Parameters:
regex- URI paths that begin with a match for this regex will match- Returns:
- the route
-
head
Route head()
Add a route that matches any HTTP HEAD request- Returns:
- the route
-
head
Route head(String path)
Add a route that matches a HTTP HEAD request and the specified path- Parameters:
path- URI paths that begin with this path will match- Returns:
- the route
-
headWithRegex
Route headWithRegex(String regex)
Add a route that matches a HTTP HEAD request and the specified path regex- Parameters:
regex- URI paths that begin with a match for this regex will match- Returns:
- the route
-
options
Route options()
Add a route that matches any HTTP OPTIONS request- Returns:
- the route
-
options
Route options(String path)
Add a route that matches a HTTP OPTIONS request and the specified path- Parameters:
path- URI paths that begin with this path will match- Returns:
- the route
-
optionsWithRegex
Route optionsWithRegex(String regex)
Add a route that matches a HTTP OPTIONS request and the specified path regex- Parameters:
regex- URI paths that begin with a match for this regex will match- Returns:
- the route
-
put
Route put()
Add a route that matches any HTTP PUT request- Returns:
- the route
-
put
Route put(String path)
Add a route that matches a HTTP PUT request and the specified path- Parameters:
path- URI paths that begin with this path will match- Returns:
- the route
-
putWithRegex
Route putWithRegex(String regex)
Add a route that matches a HTTP PUT request and the specified path regex- Parameters:
regex- URI paths that begin with a match for this regex will match- Returns:
- the route
-
post
Route post()
Add a route that matches any HTTP POST request- Returns:
- the route
-
post
Route post(String path)
Add a route that matches a HTTP POST request and the specified path- Parameters:
path- URI paths that begin with this path will match- Returns:
- the route
-
postWithRegex
Route postWithRegex(String regex)
Add a route that matches a HTTP POST request and the specified path regex- Parameters:
regex- URI paths that begin with a match for this regex will match- Returns:
- the route
-
delete
Route delete()
Add a route that matches any HTTP DELETE request- Returns:
- the route
-
delete
Route delete(String path)
Add a route that matches a HTTP DELETE request and the specified path- Parameters:
path- URI paths that begin with this path will match- Returns:
- the route
-
deleteWithRegex
Route deleteWithRegex(String regex)
Add a route that matches a HTTP DELETE request and the specified path regex- Parameters:
regex- URI paths that begin with a match for this regex will match- Returns:
- the route
-
trace
Route trace()
Add a route that matches any HTTP TRACE request- Returns:
- the route
-
trace
Route trace(String path)
Add a route that matches a HTTP TRACE request and the specified path- Parameters:
path- URI paths that begin with this path will match- Returns:
- the route
-
traceWithRegex
Route traceWithRegex(String regex)
Add a route that matches a HTTP TRACE request and the specified path regex- Parameters:
regex- URI paths that begin with a match for this regex will match- Returns:
- the route
-
connect
Route connect()
Add a route that matches any HTTP CONNECT request- Returns:
- the route
-
connect
Route connect(String path)
Add a route that matches a HTTP CONNECT request and the specified path- Parameters:
path- URI paths that begin with this path will match- Returns:
- the route
-
connectWithRegex
Route connectWithRegex(String regex)
Add a route that matches a HTTP CONNECT request and the specified path regex- Parameters:
regex- URI paths that begin with a match for this regex will match- Returns:
- the route
-
patch
Route patch()
Add a route that matches any HTTP PATCH request- Returns:
- the route
-
patch
Route patch(String path)
Add a route that matches a HTTP PATCH request and the specified path- Parameters:
path- URI paths that begin with this path will match- Returns:
- the route
-
patchWithRegex
Route patchWithRegex(String regex)
Add a route that matches a HTTP PATCH request and the specified path regex- Parameters:
regex- URI paths that begin with a match for this regex will match- Returns:
- the route
-
clear
Router clear()
Remove all the routes from this router- Returns:
- a reference to this, so the API can be used fluently
-
errorHandler
Router errorHandler(int statusCode, Handler<RoutingContext> errorHandler)
Specify an handler to handle an error for a particular status code. You can use to manage general errors too using status code 500. The handler will be called when the context fails and other failure handlers didn't write the reply or when an exception is thrown inside an handler. You must not useRoutingContext.next()inside the error handler This does not affect the normal failure routing logic.- Parameters:
statusCode- status code the errorHandler is capable of handleerrorHandler- error handler. Note: You must not useRoutingContext.next()inside the provided handler- Returns:
- a reference to this, so the API can be used fluently
-
handleContext
void handleContext(RoutingContext context)
Used to route a context to the router. Used for sub-routers. You wouldn't normally call this method directly.- Parameters:
context- the routing context
-
handleFailure
void handleFailure(RoutingContext context)
Used to route a failure to the router. Used for sub-routers. You wouldn't normally call this method directly.- Parameters:
context- the routing context
-
modifiedHandler
Router modifiedHandler(Handler<Router> handler)
When a Router routes are changed this handler is notified. This is useful for routes that depend on the state of the router.- Parameters:
handler- a notification handler that will receive this router as argument- Returns:
- a reference to this, so the API can be used fluently
-
allowForward
Router allowForward(AllowForwardHeaders allowForwardHeaders)
Set whether the router should parse "forwarded"-type headers- Parameters:
allowForwardHeaders- to enable parsing of "forwarded"-type headers- Returns:
- a reference to this, so the API can be used fluently
-
-