public class RouteMatcher extends java.lang.Object implements Handler<HttpServerRequest>
RouteMatcher also lets you extract paramaters from the request URI either a simple pattern or using regular expressions for more complex matches. Any parameters extracted will be added to the requests parameters which will be available to you in your request handler.
It's particularly useful when writing REST-ful web applications.
To use a simple pattern to extract parameters simply prefix the parameter name in the pattern with a ':' (colon).
Different handlers can be specified for each of the HTTP verbs, GET, POST, PUT, DELETE etc.
For more complex matches regular expressions can be used in the pattern. When regular expressions are used, the extracted parameters do not have a name, so they are put into the HTTP request with names of param0, param1, param2 etc.
Multiple matches can be specified for each HTTP verb. In the case there are more than one matching patterns for a particular request, the first matching one will be used.
Instances of this class are not thread-safe
Constructor and Description |
---|
RouteMatcher() |
Modifier and Type | Method and Description |
---|---|
void |
all(java.lang.String pattern,
Handler<HttpServerRequest> handler)
Specify a handler that will be called for all HTTP methods
|
void |
allWithRegEx(java.lang.String regex,
Handler<HttpServerRequest> handler)
Specify a handler that will be called for all HTTP methods
|
void |
connect(java.lang.String pattern,
Handler<HttpServerRequest> handler)
Specify a handler that will be called for a matching HTTP CONNECT
|
void |
connectWithRegEx(java.lang.String regex,
Handler<HttpServerRequest> handler)
Specify a handler that will be called for a matching HTTP CONNECT
|
void |
delete(java.lang.String pattern,
Handler<HttpServerRequest> handler)
Specify a handler that will be called for a matching HTTP DELETE
|
void |
deleteWithRegEx(java.lang.String regex,
Handler<HttpServerRequest> handler)
Specify a handler that will be called for a matching HTTP DELETE
|
void |
get(java.lang.String pattern,
Handler<HttpServerRequest> handler)
Specify a handler that will be called for a matching HTTP GET
|
void |
getWithRegEx(java.lang.String regex,
Handler<HttpServerRequest> handler)
Specify a handler that will be called for a matching HTTP GET
|
void |
handle(HttpServerRequest request)
Something has happened, so handle it.
|
void |
head(java.lang.String pattern,
Handler<HttpServerRequest> handler)
Specify a handler that will be called for a matching HTTP HEAD
|
void |
headWithRegEx(java.lang.String regex,
Handler<HttpServerRequest> handler)
Specify a handler that will be called for a matching HTTP HEAD
|
void |
noMatch(Handler<HttpServerRequest> handler)
Specify a handler that will be called when no other handlers match.
|
void |
options(java.lang.String pattern,
Handler<HttpServerRequest> handler)
Specify a handler that will be called for a matching HTTP OPTIONS
|
void |
optionsWithRegEx(java.lang.String regex,
Handler<HttpServerRequest> handler)
Specify a handler that will be called for a matching HTTP OPTIONS
|
void |
patch(java.lang.String pattern,
Handler<HttpServerRequest> handler)
Specify a handler that will be called for a matching HTTP PATCH
|
void |
patchWithRegEx(java.lang.String regex,
Handler<HttpServerRequest> handler)
Specify a handler that will be called for a matching HTTP PATCH
|
void |
post(java.lang.String pattern,
Handler<HttpServerRequest> handler)
Specify a handler that will be called for a matching HTTP POST
|
void |
postWithRegEx(java.lang.String regex,
Handler<HttpServerRequest> handler)
Specify a handler that will be called for a matching HTTP POST
|
void |
put(java.lang.String pattern,
Handler<HttpServerRequest> handler)
Specify a handler that will be called for a matching HTTP PUT
|
void |
putWithRegEx(java.lang.String regex,
Handler<HttpServerRequest> handler)
Specify a handler that will be called for a matching HTTP PUT
|
void |
trace(java.lang.String pattern,
Handler<HttpServerRequest> handler)
Specify a handler that will be called for a matching HTTP TRACE
|
void |
traceWithRegEx(java.lang.String regex,
Handler<HttpServerRequest> handler)
Specify a handler that will be called for a matching HTTP TRACE
|
public void handle(HttpServerRequest request)
Handler
handle
in interface Handler<HttpServerRequest>
public void get(java.lang.String pattern, Handler<HttpServerRequest> handler)
pattern
- The simple patternhandler
- The handler to callpublic void put(java.lang.String pattern, Handler<HttpServerRequest> handler)
pattern
- The simple patternhandler
- The handler to callpublic void post(java.lang.String pattern, Handler<HttpServerRequest> handler)
pattern
- The simple patternhandler
- The handler to callpublic void delete(java.lang.String pattern, Handler<HttpServerRequest> handler)
pattern
- The simple patternhandler
- The handler to callpublic void options(java.lang.String pattern, Handler<HttpServerRequest> handler)
pattern
- The simple patternhandler
- The handler to callpublic void head(java.lang.String pattern, Handler<HttpServerRequest> handler)
pattern
- The simple patternhandler
- The handler to callpublic void trace(java.lang.String pattern, Handler<HttpServerRequest> handler)
pattern
- The simple patternhandler
- The handler to callpublic void connect(java.lang.String pattern, Handler<HttpServerRequest> handler)
pattern
- The simple patternhandler
- The handler to callpublic void patch(java.lang.String pattern, Handler<HttpServerRequest> handler)
pattern
- The simple patternhandler
- The handler to callpublic void all(java.lang.String pattern, Handler<HttpServerRequest> handler)
pattern
- The simple patternhandler
- The handler to callpublic void getWithRegEx(java.lang.String regex, Handler<HttpServerRequest> handler)
regex
- A regular expressionhandler
- The handler to callpublic void putWithRegEx(java.lang.String regex, Handler<HttpServerRequest> handler)
regex
- A regular expressionhandler
- The handler to callpublic void postWithRegEx(java.lang.String regex, Handler<HttpServerRequest> handler)
regex
- A regular expressionhandler
- The handler to callpublic void deleteWithRegEx(java.lang.String regex, Handler<HttpServerRequest> handler)
regex
- A regular expressionhandler
- The handler to callpublic void optionsWithRegEx(java.lang.String regex, Handler<HttpServerRequest> handler)
regex
- A regular expressionhandler
- The handler to callpublic void headWithRegEx(java.lang.String regex, Handler<HttpServerRequest> handler)
regex
- A regular expressionhandler
- The handler to callpublic void traceWithRegEx(java.lang.String regex, Handler<HttpServerRequest> handler)
regex
- A regular expressionhandler
- The handler to callpublic void connectWithRegEx(java.lang.String regex, Handler<HttpServerRequest> handler)
regex
- A regular expressionhandler
- The handler to callpublic void patchWithRegEx(java.lang.String regex, Handler<HttpServerRequest> handler)
regex
- A regular expressionhandler
- The handler to callpublic void allWithRegEx(java.lang.String regex, Handler<HttpServerRequest> handler)
regex
- A regular expressionhandler
- The handler to callpublic void noMatch(Handler<HttpServerRequest> handler)
handler
-