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/616d48c8
Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/616d48c8
Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/616d48c8

Branch: refs/heads/master
Commit: 616d48c817027625b0c8ac28623b4514c70bf605
Parents: b23f357
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 16:04:07 2012 +0200

----------------------------------------------------------------------
 .../mapper/BasicResourceReferenceMapper.java       |   20 ++++++++++++---
 1 files changed, 16 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/wicket/blob/616d48c8/wicket-core/src/main/java/org/apache/wicket/core/request/mapper/BasicResourceReferenceMapper.java
----------------------------------------------------------------------
diff --git 
a/wicket-core/src/main/java/org/apache/wicket/core/request/mapper/BasicResourceReferenceMapper.java
 
b/wicket-core/src/main/java/org/apache/wicket/core/request/mapper/BasicResourceReferenceMapper.java
index c7fc0bc..4d3a07c 100755
--- 
a/wicket-core/src/main/java/org/apache/wicket/core/request/mapper/BasicResourceReferenceMapper.java
+++ 
b/wicket-core/src/main/java/org/apache/wicket/core/request/mapper/BasicResourceReferenceMapper.java
@@ -88,8 +88,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(),
@@ -273,12 +272,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()));
+
+       }
 }

Reply via email to