|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.apache.wicket.request.mapper.AbstractMapper org.apache.wicket.request.mapper.AbstractComponentMapper org.apache.wicket.request.mapper.AbstractBookmarkableMapper
public abstract class AbstractBookmarkableMapper
Abstract encoder for Bookmarkable, Hybrid and BookmarkableListenerInterface URLs.
Nested Class Summary | |
---|---|
protected static class |
AbstractBookmarkableMapper.UrlInfo
Represents information stored in URL. |
Constructor Summary | |
---|---|
AbstractBookmarkableMapper()
Construct. |
Method Summary | |
---|---|
protected abstract Url |
buildUrl(AbstractBookmarkableMapper.UrlInfo info)
Builds URL for the given AbstractBookmarkableMapper.UrlInfo instance. |
protected boolean |
checkPageClass(java.lang.Class<? extends IRequestablePage> pageClass)
|
abstract int |
getCompatibilityScore(Request request)
Returns the score representing how compatible this request mapper is to processing the given request. |
Url |
mapHandler(IRequestHandler requestHandler)
Returns the Url for given IRequestHandler or null if the request
handler is not recognized. |
IRequestHandler |
mapRequest(Request request)
Returns IRequestHandler for the request or null if the Url is
not recognized. |
protected abstract boolean |
pageMustHaveBeenCreatedBookmarkable()
Indicates whether hybrid RenderPageRequestHandler URL for page will be generated only
if page has been created with bookmarkable URL. |
protected abstract AbstractBookmarkableMapper.UrlInfo |
parseRequest(Request request)
Parse the given request to an AbstractBookmarkableMapper.UrlInfo instance. |
protected IRequestHandler |
processBookmarkable(java.lang.Class<? extends IRequestablePage> pageClass,
PageParameters pageParameters)
Creates a IRequestHandler that processes a bookmarkable request. |
protected IRequestHandler |
processHybrid(PageInfo pageInfo,
java.lang.Class<? extends IRequestablePage> pageClass,
PageParameters pageParameters,
java.lang.Integer renderCount)
Creates a IRequestHandler that processes a hybrid request. |
protected IRequestHandler |
processListener(PageComponentInfo pageComponentInfo,
java.lang.Class<? extends IRequestablePage> pageClass,
PageParameters pageParameters)
Creates a IRequestHandler that processes a listener request. |
Methods inherited from class org.apache.wicket.request.mapper.AbstractComponentMapper |
---|
encodePageComponentInfo, getContext, getPageClass, getPageComponentInfo, removeMetaParameter, requestListenerInterfaceFromString, requestListenerInterfaceToString |
Methods inherited from class org.apache.wicket.request.mapper.AbstractMapper |
---|
encodePageParameters, extractPageParameters, getMountSegments, getOptionalPlaceholder, getPlaceholder, getPlaceholder, urlStartsWith |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public AbstractBookmarkableMapper()
Method Detail |
---|
protected abstract AbstractBookmarkableMapper.UrlInfo parseRequest(Request request)
AbstractBookmarkableMapper.UrlInfo
instance.
request
-
null
if this encoder can not handle the requestprotected abstract Url buildUrl(AbstractBookmarkableMapper.UrlInfo info)
AbstractBookmarkableMapper.UrlInfo
instance. The URL this method produces must be
parseable by the parseRequest(Request)
method.
info
-
protected abstract boolean pageMustHaveBeenCreatedBookmarkable()
RenderPageRequestHandler
URL for page will be generated only
if page has been created with bookmarkable URL.
For generic bookmarkable encoders this method should return true
. For explicit
(mounted) encoders this method should return false
true
if hybrid URL requires page created bookmarkable,
false
otherwise.public abstract int getCompatibilityScore(Request request)
IRequestMapper
A good criteria for calculating the score is the number of matched url segments. For example
when there are two mappers for a mounted page, one mapped to /foo
another to
/foo/bar
and the incoming request URL is /foo/bar/baz, the mapping
to /foo/bar
should probably handle the request first as it has matching segments
count of 2 while the first one has only matching segments count of 1.
Note that the method can return value greater then zero even if the mapper does not recognize the request.
IRequestMapper.getCompatibilityScore(Request)
protected IRequestHandler processBookmarkable(java.lang.Class<? extends IRequestablePage> pageClass, PageParameters pageParameters)
IRequestHandler
that processes a bookmarkable request.
pageClass
- pageParameters
-
IRequestHandler
capable of processing the bookmarkable request.protected IRequestHandler processHybrid(PageInfo pageInfo, java.lang.Class<? extends IRequestablePage> pageClass, PageParameters pageParameters, java.lang.Integer renderCount)
IRequestHandler
that processes a hybrid request. When the page identified
by pageInfo
was not available, the request should be treated as a bookmarkable
request.
pageInfo
- pageClass
- pageParameters
- renderCount
-
IRequestHandler
capable of processing the hybrid request.protected IRequestHandler processListener(PageComponentInfo pageComponentInfo, java.lang.Class<? extends IRequestablePage> pageClass, PageParameters pageParameters)
IRequestHandler
that processes a listener request.
pageComponentInfo
- pageClass
- pageParameters
-
IRequestHandler
that invokes the listener interfacepublic IRequestHandler mapRequest(Request request)
IRequestMapper
IRequestHandler
for the request or null
if the Url
is
not recognized.
request
- provides access to request data (i.e. Url and Parameters)
null
IRequestMapper.mapRequest(org.apache.wicket.request.Request)
protected boolean checkPageClass(java.lang.Class<? extends IRequestablePage> pageClass)
public Url mapHandler(IRequestHandler requestHandler)
Url
for given IRequestHandler
or null
if the request
handler is not recognized.
null
.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |