public abstract class CompositePageResolver extends java.lang.Object implements PageResolver
PageResolver
to implement layered resolution of addresses.
Allows resolving /example/foo and /example/bar with different PageResolvers as if the address being resolved was at the root of the address (/example/foo - FooPageResolver sees /foo).
Tree-like pattern for URL resolution.
Modifier and Type | Field and Description |
---|---|
protected ResponseFactory |
responseFactory |
Constructor and Description |
---|
CompositePageResolver(ResponseFactory responseFactory) |
Modifier and Type | Method and Description |
---|---|
PageResolver |
getPageResolver(RequestTarget target) |
PageResolver |
getPageResolver(java.lang.String targetPage) |
void |
registerPage(java.lang.String targetPage,
PageResolver resolver) |
void |
registerPage(java.lang.String targetPage,
PageResolver resolver,
int requiredPerm) |
void |
registerPage(java.lang.String targetPage,
Response response,
int requiredPerm) |
Response |
resolve(Request request,
RequestTarget target)
Resolve the request to a response.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
isAuthorized
protected final ResponseFactory responseFactory
public CompositePageResolver(ResponseFactory responseFactory)
public void registerPage(java.lang.String targetPage, PageResolver resolver)
public void registerPage(java.lang.String targetPage, PageResolver resolver, int requiredPerm)
public void registerPage(java.lang.String targetPage, Response response, int requiredPerm)
public Response resolve(Request request, RequestTarget target) throws WebException
PageResolver
resolve
in interface PageResolver
request
- Request in case it is useful for choosing page.target
- Rest of the target coordinates after this page has been solved.WebException
public PageResolver getPageResolver(RequestTarget target)
public PageResolver getPageResolver(java.lang.String targetPage)