public class JettyRouteSpec
extends java.lang.Object
JettyRoutingService
to help decide which branch to execute.
Since the URI itself may contain parameters that may need to be extracted as metadata, it is possible to do that as part of the
matching process here. Given a URL of /record/zeus/apollo
the following configuration will match provided the HTTP method
is POST
; the URL pattern will be parsed for capturing groups and the metadata parentId=zeus
,
childId=apollo
will be set; the next service-id will be set to handleInsert
.
<url-pattern>^/record/(.*)/(.*)$</url-pattern>
<method>POST</method>
<metadata-key>parentId</metadata-key>
<metadata-key>childId</metadata-key>
<service-id>handleInsert</service-id>
Modifier and Type | Class and Description |
---|---|
protected class |
JettyRouteSpec.RouteMatch |
Constructor and Description |
---|
JettyRouteSpec() |
JettyRouteSpec(java.lang.String urlPattern,
java.lang.String method,
java.util.List<java.lang.String> keys,
java.lang.String serviceId) |
Modifier and Type | Method and Description |
---|---|
JettyRouteSpec.RouteMatch |
build(java.lang.String method,
java.lang.String uri) |
java.util.List<java.lang.String> |
getMetadataKeys() |
java.lang.String |
getMethod() |
java.lang.String |
getServiceId() |
java.lang.String |
getUrlPattern() |
void |
setMetadataKeys(java.util.List<java.lang.String> s)
Specify the metadata that should be populated based on any captured groups in your url pattern.
|
void |
setMethod(java.lang.String method)
Specify a method to match against (optional).
|
void |
setServiceId(java.lang.String serviceId) |
void |
setUrlPattern(java.lang.String urlPattern)
Set the URL pattern that you want to match against.
|
public JettyRouteSpec()
public JettyRouteSpec(java.lang.String urlPattern, java.lang.String method, java.util.List<java.lang.String> keys, java.lang.String serviceId)
public java.lang.String getUrlPattern()
public void setUrlPattern(java.lang.String urlPattern)
urlPattern
- the pattern.public java.lang.String getMethod()
public void setMethod(java.lang.String method)
method
- public java.util.List<java.lang.String> getMetadataKeys()
public void setMetadataKeys(java.util.List<java.lang.String> s)
The list of keys is processed in order, against each capturing match group in order
s
- list of keys.public java.lang.String getServiceId()
public void setServiceId(java.lang.String serviceId)
public JettyRouteSpec.RouteMatch build(java.lang.String method, java.lang.String uri)