WICKET-4845 Make BasicResourceReferenceMapper public so it is easy to extend it
Extract common code that checks whether this mapper can handle an url. Project: http://git-wip-us.apache.org/repos/asf/wicket/repo Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/2445116c Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/2445116c Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/2445116c Branch: refs/heads/wicket-1.5.x Commit: 2445116c2a12a9de283a4ea93896368675ceb0e0 Parents: 880718c Author: Martin Tzvetanov Grigorov <[email protected]> Authored: Fri Nov 2 15:46:08 2012 +0200 Committer: Martin Tzvetanov Grigorov <[email protected]> Committed: Fri Nov 2 15:46:08 2012 +0200 ---------------------------------------------------------------------- .../mapper/BasicResourceReferenceMapper.java | 20 ++++++++++++--- 1 files changed, 16 insertions(+), 4 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/wicket/blob/2445116c/wicket-core/src/main/java/org/apache/wicket/request/mapper/BasicResourceReferenceMapper.java ---------------------------------------------------------------------- diff --git a/wicket-core/src/main/java/org/apache/wicket/request/mapper/BasicResourceReferenceMapper.java b/wicket-core/src/main/java/org/apache/wicket/request/mapper/BasicResourceReferenceMapper.java index 3e798ad..745a684 100755 --- a/wicket-core/src/main/java/org/apache/wicket/request/mapper/BasicResourceReferenceMapper.java +++ b/wicket-core/src/main/java/org/apache/wicket/request/mapper/BasicResourceReferenceMapper.java @@ -83,8 +83,7 @@ public class BasicResourceReferenceMapper extends AbstractResourceReferenceMappe { Url url = request.getUrl(); - if (url.getSegments().size() >= 4 && - urlStartsWith(url, getContext().getNamespace(), getContext().getResourceIdentifier())) + if (canBeHandled(url)) { // extract the PageParameters from URL if there are any PageParameters pageParameters = extractPageParameters(request, url.getSegments().size(), @@ -248,12 +247,25 @@ public class BasicResourceReferenceMapper extends AbstractResourceReferenceMappe Url url = request.getUrl(); int score = -1; - if (url.getSegments().size() >= 4 && - urlStartsWith(url, getContext().getNamespace(), getContext().getResourceIdentifier())) + if (canBeHandled(url)) { score = 1; } return score; } + + /** + * Checks whether the passed Url can be handled by this mapper + * + * @param url + * the Url to check + * @return {@code true} - if the Url can be handled, {@code false} - otherwise + */ + protected boolean canBeHandled(final Url url) + { + return (url.getSegments().size() >= 4 && + urlStartsWith(url, getContext().getNamespace(), getContext().getResourceIdentifier())); + + } }
