You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by mg...@apache.org on 2011/09/05 17:14:43 UTC

svn commit: r1165324 - in /wicket/trunk/wicket-core/src/main/java/org/apache/wicket/request/mapper: BookmarkableMapper.java PageInstanceMapper.java

Author: mgrigorov
Date: Mon Sep  5 15:14:43 2011
New Revision: 1165324

URL: http://svn.apache.org/viewvc?rev=1165324&view=rev
Log:
WICKET-4028 Improve PageInstanceMapper#getCompatibilityScore() to return higher value if the request starts with 'wicket/page'


Modified:
    wicket/trunk/wicket-core/src/main/java/org/apache/wicket/request/mapper/BookmarkableMapper.java
    wicket/trunk/wicket-core/src/main/java/org/apache/wicket/request/mapper/PageInstanceMapper.java

Modified: wicket/trunk/wicket-core/src/main/java/org/apache/wicket/request/mapper/BookmarkableMapper.java
URL: http://svn.apache.org/viewvc/wicket/trunk/wicket-core/src/main/java/org/apache/wicket/request/mapper/BookmarkableMapper.java?rev=1165324&r1=1165323&r2=1165324&view=diff
==============================================================================
--- wicket/trunk/wicket-core/src/main/java/org/apache/wicket/request/mapper/BookmarkableMapper.java (original)
+++ wicket/trunk/wicket-core/src/main/java/org/apache/wicket/request/mapper/BookmarkableMapper.java Mon Sep  5 15:14:43 2011
@@ -100,9 +100,7 @@ public class BookmarkableMapper extends 
 		}
 
 		Url url = request.getUrl();
-		if (url.getSegments().size() >= 3 &&
-			urlStartsWith(url, getContext().getNamespace(),
-				getContext().getBookmarkableIdentifier()))
+		if (matches(url))
 		{
 			// try to extract page and component information from URL
 			PageComponentInfo info = getPageComponentInfo(url);
@@ -139,7 +137,18 @@ public class BookmarkableMapper extends 
 	@Override
 	public int getCompatibilityScore(Request request)
 	{
-		// always return 0 here so that the mounts have higher priority
-		return 0;
+		int score = 0;
+		Url url = request.getUrl();
+		if (matches(url))
+		{
+			score = Integer.MAX_VALUE;
+		}
+		return score;
+	}
+
+	private boolean matches(final Url url)
+	{
+		return (url.getSegments().size() >= 3 && urlStartsWith(url, getContext().getNamespace(),
+			getContext().getBookmarkableIdentifier()));
 	}
 }

Modified: wicket/trunk/wicket-core/src/main/java/org/apache/wicket/request/mapper/PageInstanceMapper.java
URL: http://svn.apache.org/viewvc/wicket/trunk/wicket-core/src/main/java/org/apache/wicket/request/mapper/PageInstanceMapper.java?rev=1165324&r1=1165323&r2=1165324&view=diff
==============================================================================
--- wicket/trunk/wicket-core/src/main/java/org/apache/wicket/request/mapper/PageInstanceMapper.java (original)
+++ wicket/trunk/wicket-core/src/main/java/org/apache/wicket/request/mapper/PageInstanceMapper.java Mon Sep  5 15:14:43 2011
@@ -59,7 +59,7 @@ public class PageInstanceMapper extends 
 	public IRequestHandler mapRequest(Request request)
 	{
 		Url url = request.getUrl();
-		if (urlStartsWith(url, getContext().getNamespace(), getContext().getPageIdentifier()))
+		if (matches(url))
 		{
 			PageComponentInfo info = getPageComponentInfo(url);
 			if (info != null && info.getPageInfo().getPageId() != null)
@@ -147,9 +147,19 @@ public class PageInstanceMapper extends 
 	/**
 	 * @see org.apache.wicket.request.IRequestMapper#getCompatibilityScore(org.apache.wicket.request.Request)
 	 */
-	public int getCompatibilityScore(Request request)
+	public int getCompatibilityScore(final Request request)
 	{
-		// always return 0 here so that the mounts have higher priority
-		return 0;
+		int score = 0;
+		Url url = request.getUrl();
+		if (matches(url))
+		{
+			score = Integer.MAX_VALUE;
+		}
+		return score;
+	}
+
+	private boolean matches(final Url url)
+	{
+		return urlStartsWith(url, getContext().getNamespace(), getContext().getPageIdentifier());
 	}
 }