Author: mgrigorov Date: Sun Jan 2 16:56:13 2011 New Revision: 1054430 URL: http://svn.apache.org/viewvc?rev=1054430&view=rev Log: WICKET-3272 Set an request parameter on Wicket tester do not add it in the request URL
Improve the code that constructs the PageComponentInfo. The special request parameter now can be at the beginning, in the middle or at the end of query string. Modified: wicket/trunk/wicket-core/src/main/java/org/apache/wicket/request/mapper/AbstractComponentMapper.java wicket/trunk/wicket-core/src/test/java/org/apache/wicket/request/mapper/MountedMapperTest.java Modified: wicket/trunk/wicket-core/src/main/java/org/apache/wicket/request/mapper/AbstractComponentMapper.java URL: http://svn.apache.org/viewvc/wicket/trunk/wicket-core/src/main/java/org/apache/wicket/request/mapper/AbstractComponentMapper.java?rev=1054430&r1=1054429&r2=1054430&view=diff ============================================================================== --- wicket/trunk/wicket-core/src/main/java/org/apache/wicket/request/mapper/AbstractComponentMapper.java (original) +++ wicket/trunk/wicket-core/src/main/java/org/apache/wicket/request/mapper/AbstractComponentMapper.java Sun Jan 2 16:56:13 2011 @@ -80,18 +80,24 @@ public abstract class AbstractComponentM * * @return PageComponentInfo instance if one was encoded in URL, <code>null</code> otherwise. */ - protected PageComponentInfo getPageComponentInfo(Url url) + protected PageComponentInfo getPageComponentInfo(final Url url) { if (url == null) { throw new IllegalStateException("Argument 'url' may not be null."); } - if (url.getQueryParameters().size() > 0) + else { - QueryParameter param = url.getQueryParameters().get(0); - if (Strings.isEmpty(param.getValue())) + for (QueryParameter queryParameter : url.getQueryParameters()) { - return PageComponentInfo.parse(param.getName()); + if (Strings.isEmpty(queryParameter.getValue())) + { + PageComponentInfo pageComponentInfo = PageComponentInfo.parse(queryParameter.getName()); + if (pageComponentInfo != null) + { + return pageComponentInfo; + } + } } } return null; Modified: wicket/trunk/wicket-core/src/test/java/org/apache/wicket/request/mapper/MountedMapperTest.java URL: http://svn.apache.org/viewvc/wicket/trunk/wicket-core/src/test/java/org/apache/wicket/request/mapper/MountedMapperTest.java?rev=1054430&r1=1054429&r2=1054430&view=diff ============================================================================== --- wicket/trunk/wicket-core/src/test/java/org/apache/wicket/request/mapper/MountedMapperTest.java (original) +++ wicket/trunk/wicket-core/src/test/java/org/apache/wicket/request/mapper/MountedMapperTest.java Sun Jan 2 16:56:13 2011 @@ -187,7 +187,7 @@ public class MountedMapperTest extends A */ public void testDecode7() { - Url url = Url.parse("some/mount/path?15-ILinkListener.4-foo-bar"); + Url url = Url.parse("some/mount/path?param1=value1&15-ILinkListener.4-foo-bar"); IRequestHandler handler = encoder.mapRequest(getRequest(url)); assertTrue(handler instanceof ListenerInterfaceRequestHandler);