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 2014/08/12 10:47:22 UTC

[1/8] WICKET-5539 Incorrect recreation of page in case of PageExpire

Repository: wicket
Updated Branches:
  refs/heads/master d6897c9b5 -> 3b661b5cb


http://git-wip-us.apache.org/repos/asf/wicket/blob/5f0e63c8/wicket-examples/src/main/java/org/apache/wicket/examples/stateless/StatelessPage3.java
----------------------------------------------------------------------
diff --git a/wicket-examples/src/main/java/org/apache/wicket/examples/stateless/StatelessPage3.java b/wicket-examples/src/main/java/org/apache/wicket/examples/stateless/StatelessPage3.java
index 80f1121..c1c1b84 100644
--- a/wicket-examples/src/main/java/org/apache/wicket/examples/stateless/StatelessPage3.java
+++ b/wicket-examples/src/main/java/org/apache/wicket/examples/stateless/StatelessPage3.java
@@ -23,6 +23,7 @@ import org.apache.wicket.markup.html.form.TextField;
 import org.apache.wicket.markup.html.link.BookmarkablePageLink;
 import org.apache.wicket.markup.html.panel.FeedbackPanel;
 import org.apache.wicket.model.PropertyModel;
+import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.validation.validator.RangeValidator;
 
 /**
@@ -78,7 +79,7 @@ public class StatelessPage3 extends WicketExamplePage
 				info("Submitted text: " + field.getDefaultModelObject());
 
 				// store the value in page parameters
-				getPage().getPageParameters().set(PARAMETER_NAME, number);
+				getPage().getPageParameters().set(PARAMETER_NAME, number, INamedParameters.Type.MANUAL);
 			}
 
 		};
@@ -87,4 +88,4 @@ public class StatelessPage3 extends WicketExamplePage
 		add(new FeedbackPanel("feedback"));
 	}
 
-}
\ No newline at end of file
+}

http://git-wip-us.apache.org/repos/asf/wicket/blob/5f0e63c8/wicket-examples/src/main/java/org/apache/wicket/examples/tree/content/BookmarkableFolderContent.java
----------------------------------------------------------------------
diff --git a/wicket-examples/src/main/java/org/apache/wicket/examples/tree/content/BookmarkableFolderContent.java b/wicket-examples/src/main/java/org/apache/wicket/examples/tree/content/BookmarkableFolderContent.java
index 80a7c6f..115551a 100644
--- a/wicket-examples/src/main/java/org/apache/wicket/examples/tree/content/BookmarkableFolderContent.java
+++ b/wicket-examples/src/main/java/org/apache/wicket/examples/tree/content/BookmarkableFolderContent.java
@@ -24,6 +24,7 @@ import org.apache.wicket.extensions.markup.html.repeater.tree.AbstractTree;
 import org.apache.wicket.extensions.markup.html.repeater.tree.content.Folder;
 import org.apache.wicket.markup.html.link.BookmarkablePageLink;
 import org.apache.wicket.model.IModel;
+import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 
 /**
@@ -67,11 +68,11 @@ public class BookmarkableFolderContent extends Content
 				else
 				{
 					PageParameters parameters = new PageParameters();
-					parameters.add("foo", foo.getId());
+					parameters.add("foo", foo.getId(), INamedParameters.Type.MANUAL);
 
 					return new BookmarkablePageLink<>(id, tree.getPage().getClass(), parameters);
 				}
 			}
 		};
 	}
-}
\ No newline at end of file
+}

http://git-wip-us.apache.org/repos/asf/wicket/blob/5f0e63c8/wicket-examples/src/test/java/org/apache/wicket/examples/hangman/HangManTest.java
----------------------------------------------------------------------
diff --git a/wicket-examples/src/test/java/org/apache/wicket/examples/hangman/HangManTest.java b/wicket-examples/src/test/java/org/apache/wicket/examples/hangman/HangManTest.java
index b5bb61e..5991c9f 100644
--- a/wicket-examples/src/test/java/org/apache/wicket/examples/hangman/HangManTest.java
+++ b/wicket-examples/src/test/java/org/apache/wicket/examples/hangman/HangManTest.java
@@ -17,6 +17,7 @@
 package org.apache.wicket.examples.hangman;
 
 import org.apache.wicket.markup.html.link.Link;
+import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.apache.wicket.util.tester.WicketTester;
 import org.junit.Assert;
@@ -143,7 +144,7 @@ public class HangManTest extends Assert
 		WicketTester tester = new WicketTester(new HangmanApplication());
 		try
 		{
-			tester.startPage(Home.class, new PageParameters().set("word", "hangman"));
+			tester.startPage(Home.class, new PageParameters().set("word", "hangman", INamedParameters.Type.MANUAL));
 			tester.assertComponent("start", Link.class);
 			tester.assertContains("Wicket Examples - hangman");
 			tester.clickLink("start");
@@ -173,7 +174,7 @@ public class HangManTest extends Assert
 		WicketTester tester = new WicketTester(new HangmanApplication());
 		try
 		{
-			tester.startPage(Home.class, new PageParameters().set("word", "hangman"));
+			tester.startPage(Home.class, new PageParameters().set("word", "hangman", INamedParameters.Type.MANUAL));
 			tester.assertComponent("start", Link.class);
 			tester.assertContains("Wicket Examples - hangman");
 			tester.clickLink("start");

http://git-wip-us.apache.org/repos/asf/wicket/blob/5f0e63c8/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/form/upload/UploadStatusResource.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/form/upload/UploadStatusResource.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/form/upload/UploadStatusResource.java
index 84ed600..819d796 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/form/upload/UploadStatusResource.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/form/upload/UploadStatusResource.java
@@ -24,6 +24,7 @@ import org.apache.wicket.model.Model;
 import org.apache.wicket.model.StringResourceModel;
 import org.apache.wicket.protocol.http.servlet.MultipartServletWebRequestImpl;
 import org.apache.wicket.protocol.http.servlet.UploadInfo;
+import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.apache.wicket.request.resource.AbstractResource;
 import org.apache.wicket.util.time.Duration;
@@ -117,6 +118,6 @@ class UploadStatusResource extends AbstractResource
 	 */
 	public static PageParameters newParameter(String upload)
 	{
-		return new PageParameters().add(UPLOAD_PARAMETER, upload);
+		return new PageParameters().add(UPLOAD_PARAMETER, upload, INamedParameters.Type.MANUAL);
 	}
-}
\ No newline at end of file
+}

http://git-wip-us.apache.org/repos/asf/wicket/blob/5f0e63c8/wicket-extensions/src/test/java/org/apache/wicket/extensions/markup/html/repeater/data/table/DataTableTest.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/test/java/org/apache/wicket/extensions/markup/html/repeater/data/table/DataTableTest.java b/wicket-extensions/src/test/java/org/apache/wicket/extensions/markup/html/repeater/data/table/DataTableTest.java
index d9711cc..c5b5d5a 100644
--- a/wicket-extensions/src/test/java/org/apache/wicket/extensions/markup/html/repeater/data/table/DataTableTest.java
+++ b/wicket-extensions/src/test/java/org/apache/wicket/extensions/markup/html/repeater/data/table/DataTableTest.java
@@ -29,6 +29,7 @@ import org.apache.wicket.markup.html.WebPage;
 import org.apache.wicket.markup.repeater.data.IDataProvider;
 import org.apache.wicket.model.IModel;
 import org.apache.wicket.model.Model;
+import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.apache.wicket.util.resource.IResourceStream;
 import org.apache.wicket.util.resource.StringResourceStream;
@@ -84,13 +85,13 @@ public class DataTableTest extends WicketTestCase
 	public void testWicket3603()
 	{
 		PageParameters parameters = new PageParameters();
-		parameters.add("empty", Boolean.TRUE);
+		parameters.add("empty", Boolean.TRUE, INamedParameters.Type.MANUAL);
 		tester.startPage(Wicket3603Page.class, parameters);
 // System.err.println(tester.getLastResponseAsString());
 		Assert.assertTrue(tester.getLastResponseAsString().contains("thead"));
 		Assert.assertTrue(tester.getLastResponseAsString().contains("tfoot"));
 
-		parameters.set("empty", Boolean.FALSE);
+		parameters.set("empty", Boolean.FALSE, INamedParameters.Type.MANUAL);
 		tester.startPage(Wicket3603Page.class);
 // System.err.println(tester.getLastResponseAsString());
 		Assert.assertFalse(tester.getLastResponseAsString().contains("thead"));

http://git-wip-us.apache.org/repos/asf/wicket/blob/5f0e63c8/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/IIndexedParameters.java
----------------------------------------------------------------------
diff --git a/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/IIndexedParameters.java b/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/IIndexedParameters.java
index 073fe34..5a4eef4 100644
--- a/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/IIndexedParameters.java
+++ b/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/IIndexedParameters.java
@@ -26,18 +26,20 @@ import org.apache.wicket.util.string.StringValue;
  */
 public interface IIndexedParameters
 {
-
 	/**
 	 * Sets the indexed parameter on given index
 	 * 
 	 * @param index
+	 *          The position of the parameter
 	 * @param object
-	 * @return this
+	 *          The parameter at this position
+	 * @return this instance, for chaining
 	 */
 	IIndexedParameters set(final int index, final Object object);
 
 	/**
 	 * @param index
+	 *          The position of the parameter
 	 * @return indexed parameter on given index
 	 */
 	StringValue get(final int index);
@@ -46,15 +48,15 @@ public interface IIndexedParameters
 	 * Removes indexed parameter on given index
 	 * 
 	 * @param index
-	 * @return this
+	 *          The position of the parameter
+	 * @return this instance, for chaining
 	 */
 	IIndexedParameters remove(final int index);
 
 	/**
 	 * Removes all indexed parameters.
 	 * 
-	 * @return this
+	 * @return this instance, for chaining
 	 */
 	IIndexedParameters clearIndexed();
-
-}
\ No newline at end of file
+}

http://git-wip-us.apache.org/repos/asf/wicket/blob/5f0e63c8/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/INamedParameters.java
----------------------------------------------------------------------
diff --git a/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/INamedParameters.java b/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/INamedParameters.java
index b3ed837..f09874d 100644
--- a/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/INamedParameters.java
+++ b/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/INamedParameters.java
@@ -31,6 +31,15 @@ import org.apache.wicket.util.string.StringValue;
  */
 public interface INamedParameters
 {
+	enum Type
+	{
+		MANUAL,
+
+		QUERY_STRING,
+
+		PATH
+	}
+
 	/**
 	 * Represents a named parameter entry. There can be multiple {@link NamedPair}s in
 	 * {@link PageParameters} that have same key.
@@ -41,6 +50,7 @@ public interface INamedParameters
 	{
 		private final String key;
 		private final String value;
+		private final Type type;
 
 		/**
 		 * Constructor
@@ -50,8 +60,14 @@ public interface INamedParameters
 		 */
 		public NamedPair(final String key, final String value)
 		{
+			this(key, value, Type.MANUAL);
+		}
+
+		public NamedPair(final String key, final String value, Type type)
+		{
 			this.key = Args.notEmpty(key, "key");
 			this.value = Args.notNull(value, "value");
+			this.type = Args.notNull(type, "type");
 		}
 
 		/**
@@ -70,6 +86,11 @@ public interface INamedParameters
 			return value;
 		}
 
+		public Type getType()
+		{
+			return type;
+		}
+
 		@Override
 		public boolean equals(Object o)
 		{
@@ -80,6 +101,7 @@ public interface INamedParameters
 
 			if (key != null ? !key.equals(namedPair.key) : namedPair.key != null) return false;
 			if (value != null ? !value.equals(namedPair.value) : namedPair.value != null) return false;
+			if (type != null ? !type.equals(namedPair.type) : namedPair.type != null) return false;
 
 			return true;
 		}
@@ -89,6 +111,7 @@ public interface INamedParameters
 		{
 			int result = key != null ? key.hashCode() : 0;
 			result = 31 * result + (value != null ? value.hashCode() : 0);
+			result = result + type.hashCode();
 			return result;
 		}
 	}
@@ -147,9 +170,10 @@ public interface INamedParameters
 	 * 
 	 * @param name
 	 * @param value
+	 * @param type
 	 * @return this
 	 */
-	INamedParameters add(final String name, final Object value);
+	INamedParameters add(final String name, final Object value, Type type);
 
 	/**
 	 * Adds named parameter to a specified position. The {@link IRequestMapper}s may or may not take
@@ -158,9 +182,10 @@ public interface INamedParameters
 	 * @param name
 	 * @param value
 	 * @param index
+	 * @param type
 	 * @return this
 	 */
-	INamedParameters add(final String name, final Object value, final int index);
+	INamedParameters add(final String name, final Object value, final int index, Type type);
 
 	/**
 	 * Sets the named parameter on specified position. The {@link IRequestMapper}s may or may not
@@ -169,18 +194,20 @@ public interface INamedParameters
 	 * @param name
 	 * @param value
 	 * @param index
+	 * @param type
 	 * @return this
 	 */
-	INamedParameters set(final String name, final Object value, final int index);
+	INamedParameters set(final String name, final Object value, final int index, Type type);
 
 	/**
 	 * Sets the value for named parameter with given name.
 	 * 
 	 * @param name
 	 * @param value
+	 * @param type
 	 * @return this
 	 */
-	INamedParameters set(final String name, final Object value);
+	INamedParameters set(final String name, final Object value, Type type);
 
 	/**
 	 * Removes all named parameters.

http://git-wip-us.apache.org/repos/asf/wicket/blob/5f0e63c8/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/NamedParameterType.java
----------------------------------------------------------------------
diff --git a/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/NamedParameterType.java b/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/NamedParameterType.java
new file mode 100644
index 0000000..99bf702
--- /dev/null
+++ b/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/NamedParameterType.java
@@ -0,0 +1,30 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.wicket.request.mapper.parameter;
+
+/**
+ *
+ */
+public enum NamedParameterType
+{
+	MANUAL,
+
+	QUERY_STRING,
+
+	PATH
+}

http://git-wip-us.apache.org/repos/asf/wicket/blob/5f0e63c8/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/PageParameters.java
----------------------------------------------------------------------
diff --git a/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/PageParameters.java b/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/PageParameters.java
index 4b45d3f..0b6e7fb 100644
--- a/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/PageParameters.java
+++ b/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/PageParameters.java
@@ -275,25 +275,17 @@ public class PageParameters implements IClusterable, IIndexedParameters, INamedP
 		return this;
 	}
 
-	/**
-	 * @see org.apache.wicket.request.mapper.parameter.INamedParameters#add(java.lang.String,
-	 *      java.lang.Object)
-	 */
 	@Override
-	public PageParameters add(final String name, final Object value)
+	public PageParameters add(final String name, final Object value, Type type)
 	{
-		add(name, value, -1);
+		add(name, value, -1, Type.MANUAL);
 		return this;
 	}
 
-	/**
-	 * @see org.apache.wicket.request.mapper.parameter.INamedParameters#add(java.lang.String,
-	 *      java.lang.Object, int)
-	 */
 	@Override
-	public PageParameters add(final String name, final Object value, final int index)
+	public PageParameters add(final String name, final Object value, final int index, Type type)
 	{
-		Args.notNull(name, "name");
+		Args.notEmpty(name, "name");
 		Args.notNull(value, "value");
 
 		if (namedParameters == null)
@@ -313,7 +305,7 @@ public class PageParameters implements IClusterable, IIndexedParameters, INamedP
 
 		for (String val : values)
 		{
-			NamedPair entry = new NamedPair(name, val);
+			NamedPair entry = new NamedPair(name, val, type);
 
 			if (index < 0 || index > namedParameters.size())
 			{
@@ -327,37 +319,26 @@ public class PageParameters implements IClusterable, IIndexedParameters, INamedP
 		return this;
 	}
 
-	/**
-	 * @see org.apache.wicket.request.mapper.parameter.INamedParameters#set(java.lang.String,
-	 *      java.lang.Object, int)
-	 */
 	@Override
-	public PageParameters set(final String name, final Object value, final int index)
+	public PageParameters set(final String name, final Object value, final int index, Type type)
 	{
 		remove(name);
 
 		if (value != null)
 		{
-			add(name, value, index);
+			add(name, value, index, type);
 		}
 		return this;
 	}
 
-	/**
-	 * @see org.apache.wicket.request.mapper.parameter.INamedParameters#set(java.lang.String,
-	 *      java.lang.Object)
-	 */
 	@Override
-	public PageParameters set(final String name, final Object value)
+	public PageParameters set(final String name, final Object value, Type type)
 	{
 		int position = getPosition(name);
-		set(name, value, position);
+		set(name, value, position, type);
 		return this;
 	}
 
-	/**
-	 * @see org.apache.wicket.request.mapper.parameter.IIndexedParameters#clearIndexed()
-	 */
 	@Override
 	public PageParameters clearIndexed()
 	{
@@ -365,9 +346,6 @@ public class PageParameters implements IClusterable, IIndexedParameters, INamedP
 		return this;
 	}
 
-	/**
-	 * @see org.apache.wicket.request.mapper.parameter.INamedParameters#clearNamed()
-	 */
 	@Override
 	public PageParameters clearNamed()
 	{
@@ -379,7 +357,8 @@ public class PageParameters implements IClusterable, IIndexedParameters, INamedP
 	 * Copy the page parameters
 	 * 
 	 * @param other
-	 * @return this
+	 *          The new parameters
+	 * @return this instance, for chaining
 	 */
 	public PageParameters overwriteWith(final PageParameters other)
 	{
@@ -395,7 +374,8 @@ public class PageParameters implements IClusterable, IIndexedParameters, INamedP
 	 * Merges the page parameters into this, overwriting existing values
 	 * 
 	 * @param other
-	 * @return this
+	 *          The parameters to merge
+	 * @return this instance, for chaining
 	 */
 	public PageParameters mergeWith(final PageParameters other)
 	{
@@ -414,7 +394,7 @@ public class PageParameters implements IClusterable, IIndexedParameters, INamedP
 			}
 			for (NamedPair curNamed : other.getAllNamed())
 			{
-				add(curNamed.getKey(), curNamed.getValue());
+				add(curNamed.getKey(), curNamed.getValue(), curNamed.getType());
 			}
 		}
 		return this;

http://git-wip-us.apache.org/repos/asf/wicket/blob/5f0e63c8/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/PageParametersEncoder.java
----------------------------------------------------------------------
diff --git a/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/PageParametersEncoder.java b/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/PageParametersEncoder.java
index d848668..13e45ec 100644
--- a/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/PageParametersEncoder.java
+++ b/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/PageParametersEncoder.java
@@ -47,7 +47,7 @@ public class PageParametersEncoder implements IPageParametersEncoder
 
 		for (QueryParameter p : url.getQueryParameters())
 		{
-			parameters.add(p.getName(), p.getValue());
+			parameters.add(p.getName(), p.getValue(), INamedParameters.Type.QUERY_STRING);
 		}
 
 		return parameters.isEmpty() ? null : parameters;

http://git-wip-us.apache.org/repos/asf/wicket/blob/5f0e63c8/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/UrlPathPageParametersEncoder.java
----------------------------------------------------------------------
diff --git a/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/UrlPathPageParametersEncoder.java b/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/UrlPathPageParametersEncoder.java
index 03740d7..ce9048d 100644
--- a/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/UrlPathPageParametersEncoder.java
+++ b/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/UrlPathPageParametersEncoder.java
@@ -83,7 +83,7 @@ public class UrlPathPageParametersEncoder implements IPageParametersEncoder
 			{
 				String value = segment.next();
 
-				params.add(key, value);
+				params.add(key, value, INamedParameters.Type.PATH);
 			}
 		}
 

http://git-wip-us.apache.org/repos/asf/wicket/blob/5f0e63c8/wicket-request/src/test/java/org/apache/wicket/request/mapper/parameter/PageParametersTest.java
----------------------------------------------------------------------
diff --git a/wicket-request/src/test/java/org/apache/wicket/request/mapper/parameter/PageParametersTest.java b/wicket-request/src/test/java/org/apache/wicket/request/mapper/parameter/PageParametersTest.java
index 71fcb4c..c5abbdf 100644
--- a/wicket-request/src/test/java/org/apache/wicket/request/mapper/parameter/PageParametersTest.java
+++ b/wicket-request/src/test/java/org/apache/wicket/request/mapper/parameter/PageParametersTest.java
@@ -38,7 +38,7 @@ public class PageParametersTest extends Assert
 		PageParameters parameters = new PageParameters();
 
 		String[] input = new String[] { "v1", "v2" };
-		parameters.add("key", input);
+		parameters.add("key", input, INamedParameters.Type.MANUAL);
 
 		List<StringValue> stringValue = parameters.getValues("key");
 
@@ -69,17 +69,17 @@ public class PageParametersTest extends Assert
 	public void getPosition()
 	{
 		PageParameters parameters = new PageParameters();
-		parameters.set("named1", "value1", 3);
+		parameters.set("named1", "value1", 3, INamedParameters.Type.MANUAL);
 		assertEquals(
 			"Adding a parameter at position out of the size of the list will just append it", 0,
 			parameters.getPosition("named1"));
 
-		parameters.set("named2", "value2", 0);
+		parameters.set("named2", "value2", 0, INamedParameters.Type.MANUAL);
 		assertEquals(0, parameters.getPosition("named2"));
 		assertEquals("'named1' should be moved back", 1, parameters.getPosition("named1"));
 
 
-		parameters.set("named3", "value3", -100);
+		parameters.set("named3", "value3", -100, INamedParameters.Type.MANUAL);
 		assertEquals(0, parameters.getPosition("named2"));
 		assertEquals(1, parameters.getPosition("named1"));
 		assertEquals("Adding a parameter with negative position will just append it.", 2,
@@ -93,14 +93,16 @@ public class PageParametersTest extends Assert
 	public void set()
 	{
 		PageParameters parameters = new PageParameters();
-		parameters.add("named1", "value1").add("named2", "value2");
+		parameters
+				.add("named1", "value1", INamedParameters.Type.MANUAL)
+				.add("named2", "value2", INamedParameters.Type.MANUAL);
 
 		assertEquals(0, parameters.getPosition("named1"));
 		assertEquals(1, parameters.getPosition("named2"));
 
 		// overwrite it
-		parameters.set("named1", "newValue");
-		parameters.set("named3", "value3");
+		parameters.set("named1", "newValue", INamedParameters.Type.MANUAL);
+		parameters.set("named3", "value3", INamedParameters.Type.MANUAL);
 		assertEquals(0, parameters.getPosition("named1"));
 		assertEquals("newValue", parameters.get("named1").toString());
 		assertEquals(1, parameters.getPosition("named2"));
@@ -115,8 +117,9 @@ public class PageParametersTest extends Assert
 	@Test
 	public void removeParameters()
 	{
-		PageParameters parameters = new PageParameters().add("named1", "value1").add("named2",
-			"value2");
+		PageParameters parameters = new PageParameters()
+				.add("named1", "value1", INamedParameters.Type.MANUAL)
+				.add("named2", "value2", INamedParameters.Type.MANUAL);
 
 		assertEquals("value1", parameters.get("named1").toString());
 		assertEquals("value2", parameters.get("named2").toString());
@@ -134,8 +137,9 @@ public class PageParametersTest extends Assert
 	@Test
 	public void removeParametersByValue()
 	{
-		PageParameters parameters = new PageParameters().add("named1", "value1").add("named1",
-			"value2");
+		PageParameters parameters = new PageParameters()
+				.add("named1", "value1", INamedParameters.Type.MANUAL)
+				.add("named1", "value2", INamedParameters.Type.MANUAL);
 
 		assertEquals(2, parameters.getAllNamed().size());
 
@@ -151,14 +155,16 @@ public class PageParametersTest extends Assert
 	@Test
 	public void mergeParameters()
 	{
-		PageParameters left = new PageParameters().add("left", "left")
-			.add("both", "both1")
-			.add("both", "both2")
+		PageParameters left = new PageParameters()
+			.add("left", "left", INamedParameters.Type.MANUAL)
+			.add("both", "both1", INamedParameters.Type.MANUAL)
+			.add("both", "both2", INamedParameters.Type.MANUAL)
 			.set(0, "val0")
 			.set(1, "val1");
-		PageParameters right = new PageParameters().add("right", "right")
-			.add("both", "both1-r")
-			.add("both", "both2-r")
+		PageParameters right = new PageParameters()
+			.add("right", "right", INamedParameters.Type.MANUAL)
+			.add("both", "both1-r", INamedParameters.Type.MANUAL)
+			.add("both", "both2-r", INamedParameters.Type.MANUAL)
 			.set(1, "val1-r")
 			.set(2, "val2");
 		left.mergeWith(right);

http://git-wip-us.apache.org/repos/asf/wicket/blob/5f0e63c8/wicket-request/src/test/java/org/apache/wicket/request/mapper/parameter/UrlPathPageParametersEncoderTest.java
----------------------------------------------------------------------
diff --git a/wicket-request/src/test/java/org/apache/wicket/request/mapper/parameter/UrlPathPageParametersEncoderTest.java b/wicket-request/src/test/java/org/apache/wicket/request/mapper/parameter/UrlPathPageParametersEncoderTest.java
index 9eca67c..4217c19 100644
--- a/wicket-request/src/test/java/org/apache/wicket/request/mapper/parameter/UrlPathPageParametersEncoderTest.java
+++ b/wicket-request/src/test/java/org/apache/wicket/request/mapper/parameter/UrlPathPageParametersEncoderTest.java
@@ -33,8 +33,8 @@ public class UrlPathPageParametersEncoderTest extends Assert
 	public void encodeNamedParameters()
 	{
 		PageParameters params = new PageParameters();
-		params.add("name1", "value1");
-		params.add("name2", "value2");
+		params.add("name1", "value1", INamedParameters.Type.MANUAL);
+		params.add("name2", "value2", INamedParameters.Type.MANUAL);
 
 		UrlPathPageParametersEncoder encoder = new UrlPathPageParametersEncoder();
 		Url url = encoder.encodePageParameters(params);
@@ -51,8 +51,8 @@ public class UrlPathPageParametersEncoderTest extends Assert
 	{
 		// the non-ASCII characters are randomly chosen
 		PageParameters params = new PageParameters();
-		params.add("name1", "valueএ");
-		params.add("nameㄘ", "value2");
+		params.add("name1", "valueএ", INamedParameters.Type.MANUAL);
+		params.add("nameㄘ", "value2", INamedParameters.Type.MANUAL);
 
 		UrlPathPageParametersEncoder encoder = new UrlPathPageParametersEncoder();
 		Url url = encoder.encodePageParameters(params);


[4/8] git commit: WICKET-5669 Mark page parameters with a flag where they have been read from

Posted by mg...@apache.org.
WICKET-5669 Mark page parameters with a flag where they have been read from


Project: http://git-wip-us.apache.org/repos/asf/wicket/repo
Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/76433a76
Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/76433a76
Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/76433a76

Branch: refs/heads/master
Commit: 76433a76288cf3ac336676c81c400a556f6dc5a3
Parents: e8773fb
Author: Martin Tzvetanov Grigorov <mg...@apache.org>
Authored: Mon Aug 11 15:19:23 2014 +0200
Committer: Martin Tzvetanov Grigorov <mg...@apache.org>
Committed: Mon Aug 11 15:19:23 2014 +0200

----------------------------------------------------------------------
 .../PageExpirationRecoveryTest.java             |   5 +-
 .../mapper/parameter/INamedParameters.java      |   4 +-
 .../mapper/parameter/PageParameters.java        |  19 ++-
 .../mapper/parameter/PageParametersTest.java    | 134 +++++++++++++++++++
 4 files changed, 155 insertions(+), 7 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/wicket/blob/76433a76/wicket-core/src/test/java/org/apache/wicket/page/expirationrecovery/PageExpirationRecoveryTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/page/expirationrecovery/PageExpirationRecoveryTest.java b/wicket-core/src/test/java/org/apache/wicket/page/expirationrecovery/PageExpirationRecoveryTest.java
index b3322c6..11c077a 100644
--- a/wicket-core/src/test/java/org/apache/wicket/page/expirationrecovery/PageExpirationRecoveryTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/page/expirationrecovery/PageExpirationRecoveryTest.java
@@ -16,6 +16,9 @@
  */
 package org.apache.wicket.page.expirationrecovery;
 
+import static org.hamcrest.Matchers.equalTo;
+import static org.hamcrest.Matchers.is;
+
 import org.apache.wicket.WicketTestCase;
 import org.apache.wicket.protocol.http.PageExpiredException;
 import org.apache.wicket.request.mapper.parameter.INamedParameters;
@@ -130,7 +133,7 @@ public class PageExpirationRecoveryTest extends WicketTestCase
 		pageSettings.setRecreateMountedPagesAfterExpiry(true);
 
 		ExpirationRecoveryPage page = tester.startPage(ExpirationRecoveryPage.class, parameters);
-		assertEquals(parameters, page.getPageParameters());
+		assertThat(parameters, is(equalTo(page.getPageParameters())));
 
 
 		tester.getSession().invalidateNow();

http://git-wip-us.apache.org/repos/asf/wicket/blob/76433a76/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/INamedParameters.java
----------------------------------------------------------------------
diff --git a/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/INamedParameters.java b/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/INamedParameters.java
index 288cd7c..45b4c6c 100644
--- a/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/INamedParameters.java
+++ b/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/INamedParameters.java
@@ -32,7 +32,7 @@ import org.apache.wicket.util.string.StringValue;
 public interface INamedParameters
 {
 	/**
-	 * A hint where the parameter is read from.
+	 * A hint where the parameter is read/parsed from.
 	 */
 	enum Type
 	{
@@ -113,7 +113,6 @@ public interface INamedParameters
 
 			if (key != null ? !key.equals(namedPair.key) : namedPair.key != null) return false;
 			if (value != null ? !value.equals(namedPair.value) : namedPair.value != null) return false;
-			if (type != null ? !type.equals(namedPair.type) : namedPair.type != null) return false;
 
 			return true;
 		}
@@ -123,7 +122,6 @@ public interface INamedParameters
 		{
 			int result = key != null ? key.hashCode() : 0;
 			result = 31 * result + (value != null ? value.hashCode() : 0);
-			result = result + type.hashCode();
 			return result;
 		}
 	}

http://git-wip-us.apache.org/repos/asf/wicket/blob/76433a76/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/PageParameters.java
----------------------------------------------------------------------
diff --git a/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/PageParameters.java b/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/PageParameters.java
index 357e91a..df74439 100644
--- a/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/PageParameters.java
+++ b/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/PageParameters.java
@@ -199,7 +199,6 @@ public class PageParameters implements IClusterable, IIndexedParameters, INamedP
 		return namedParameters != null ? Collections.unmodifiableList(namedParameters) : Collections.<NamedPair>emptyList();
 	}
 
-
 	@Override
 	public List<NamedPair> getAllNamedByType(Type type)
 	{
@@ -274,11 +273,15 @@ public class PageParameters implements IClusterable, IIndexedParameters, INamedP
 		return this;
 	}
 
+	public PageParameters add(final String name, final Object value)
+	{
+		return add(name, value, Type.MANUAL);
+	}
+
 	@Override
 	public PageParameters add(final String name, final Object value, Type type)
 	{
-		add(name, value, -1, Type.MANUAL);
-		return this;
+		return add(name, value, -1, type);
 	}
 
 	@Override
@@ -318,6 +321,11 @@ public class PageParameters implements IClusterable, IIndexedParameters, INamedP
 		return this;
 	}
 
+	public PageParameters set(final String name, final Object value, final int index)
+	{
+		return set(name, value, index, Type.MANUAL);
+	}
+
 	@Override
 	public PageParameters set(final String name, final Object value, final int index, Type type)
 	{
@@ -330,6 +338,11 @@ public class PageParameters implements IClusterable, IIndexedParameters, INamedP
 		return this;
 	}
 
+	public PageParameters set(final String name, final Object value)
+	{
+		return set(name, value, Type.MANUAL);
+	}
+
 	@Override
 	public PageParameters set(final String name, final Object value, Type type)
 	{

http://git-wip-us.apache.org/repos/asf/wicket/blob/76433a76/wicket-request/src/test/java/org/apache/wicket/request/mapper/parameter/PageParametersTest.java
----------------------------------------------------------------------
diff --git a/wicket-request/src/test/java/org/apache/wicket/request/mapper/parameter/PageParametersTest.java b/wicket-request/src/test/java/org/apache/wicket/request/mapper/parameter/PageParametersTest.java
index c5abbdf..155ecbe 100644
--- a/wicket-request/src/test/java/org/apache/wicket/request/mapper/parameter/PageParametersTest.java
+++ b/wicket-request/src/test/java/org/apache/wicket/request/mapper/parameter/PageParametersTest.java
@@ -16,6 +16,9 @@
  */
 package org.apache.wicket.request.mapper.parameter;
 
+import static org.hamcrest.CoreMatchers.equalTo;
+import static org.hamcrest.CoreMatchers.is;
+
 import java.util.List;
 
 import org.apache.wicket.util.string.StringValue;
@@ -178,4 +181,135 @@ public class PageParametersTest extends Assert
 		assertEquals("both1-r", left.getValues("both").get(0).toString());
 		assertEquals("both2-r", left.getValues("both").get(1).toString());
 	}
+
+	/**
+	 * https://issues.apache.org/jira/browse/WICKET-5669
+	 */
+	@Test
+	public void parameterTypes()
+	{
+		PageParameters p = new PageParameters()
+				.add("pathName1", "pathValue1", INamedParameters.Type.PATH)
+				.add("pathName1", "pathValue1.1", INamedParameters.Type.PATH)
+				.add("pathName2", "pathValue2", INamedParameters.Type.PATH)
+				.add("queryName1", "queryValue1", INamedParameters.Type.QUERY_STRING)
+				.add("queryName1", "queryValue1.1", INamedParameters.Type.QUERY_STRING)
+				.add("queryName2", "queryValue2", INamedParameters.Type.QUERY_STRING)
+				.add("manualName1", "manualValue1", INamedParameters.Type.MANUAL)
+				.add("manualName1", "manualValue1.1", INamedParameters.Type.MANUAL)
+				.add("manualName2", "manualValue2", INamedParameters.Type.MANUAL);
+
+		{
+			// PATH
+			assertThat(p.getAllNamedByType(INamedParameters.Type.PATH).size(), is(3));
+
+			List<StringValue> pathName1Values = p.getValues("pathName1");
+			assertThat(pathName1Values.size(), is(2));
+			assertThat(pathName1Values.get(0).toString(), is("pathValue1"));
+			assertThat(pathName1Values.get(1).toString(), is("pathValue1.1"));
+
+			List<StringValue> pathName2Values = p.getValues("pathName2");
+			assertThat(pathName2Values.size(), is(1));
+			assertThat(pathName2Values.get(0).toString(), is("pathValue2"));
+		}
+
+		{
+			// QUERY STRING
+			assertThat(p.getAllNamedByType(INamedParameters.Type.QUERY_STRING).size(), is(3));
+
+			List<StringValue> queryName1Values = p.getValues("queryName1");
+			assertThat(queryName1Values.size(), is(2));
+			assertThat(queryName1Values.get(0).toString(), is("queryValue1"));
+			assertThat(queryName1Values.get(1).toString(), is("queryValue1.1"));
+
+			List<StringValue> queryName2Values = p.getValues("queryName2");
+			assertThat(queryName2Values.size(), is(1));
+			assertThat(queryName2Values.get(0).toString(), is("queryValue2"));
+		}
+
+		{
+			// MANUAL
+			assertThat(p.getAllNamedByType(INamedParameters.Type.MANUAL).size(), is(3));
+
+			List<StringValue> manualName1Values = p.getValues("manualName1");
+			assertThat(manualName1Values.size(), is(2));
+			assertThat(manualName1Values.get(0).toString(), is("manualValue1"));
+			assertThat(manualName1Values.get(1).toString(), is("manualValue1.1"));
+
+			List<StringValue> manualName2Values = p.getValues("manualName2");
+			assertThat(manualName2Values.size(), is(1));
+			assertThat(manualName2Values.get(0).toString(), is("manualValue2"));
+		}
+	}
+
+	/**
+	 * https://issues.apache.org/jira/browse/WICKET-5669
+	 */
+	@Test
+	public void addWithoutTypeIsManual()
+	{
+		PageParameters p = new PageParameters();
+		p.add("name", "value");
+		assertThat(p.getAllNamed().get(0).getType(), is(INamedParameters.Type.MANUAL));
+	}
+
+	/**
+	 * https://issues.apache.org/jira/browse/WICKET-5669
+	 */
+	@Test
+	public void setWithoutTypeIsManual()
+	{
+		PageParameters p = new PageParameters();
+		p.set("name", "value");
+		assertThat(p.getAllNamed().get(0).getType(), is(INamedParameters.Type.MANUAL));
+	}
+
+	/**
+	 * https://issues.apache.org/jira/browse/WICKET-5669
+	 */
+	@Test
+	public void setWithIndexWithoutTypeIsManual()
+	{
+		PageParameters p = new PageParameters();
+		p.set("name", "value", 3);
+		assertThat(p.getAllNamed().get(0).getType(), is(INamedParameters.Type.MANUAL));
+	}
+
+	/**
+	 * NamedPairs equality should not depend on the type
+	 *
+	 * https://issues.apache.org/jira/browse/WICKET-5669
+	 */
+	@Test
+	public void equality()
+	{
+		PageParameters p1 = new PageParameters()
+				.add("a", "b", INamedParameters.Type.MANUAL)
+				.set("c", "d", INamedParameters.Type.MANUAL);
+
+		PageParameters p2 = new PageParameters()
+				.set("a", "b", INamedParameters.Type.QUERY_STRING)
+				.add("c", "d", INamedParameters.Type.PATH);
+
+		assertThat(p1, is(equalTo(p2)));
+	}
+
+	/**
+	 * NamedPairs hashCode should not depend on the type
+	 *
+	 * https://issues.apache.org/jira/browse/WICKET-5669
+	 */
+	@Test
+	public void hashcode()
+	{
+		PageParameters p1 = new PageParameters()
+				.add("a", "b", INamedParameters.Type.MANUAL)
+				.set("c", "d", INamedParameters.Type.MANUAL);
+
+		PageParameters p2 = new PageParameters()
+				.set("a", "b", INamedParameters.Type.QUERY_STRING)
+				.add("c", "d", INamedParameters.Type.PATH);
+
+		assertThat(p1.hashCode(), is(equalTo(p2.hashCode())));
+	}
 }


[6/8] git commit: WICKET-5670 org.apache.wicket.protocol.ws.api.registry.IKey should be Serializable (IClusterable)

Posted by mg...@apache.org.
WICKET-5670 org.apache.wicket.protocol.ws.api.registry.IKey should be Serializable (IClusterable)


Project: http://git-wip-us.apache.org/repos/asf/wicket/repo
Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/a01cd9d9
Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/a01cd9d9
Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/a01cd9d9

Branch: refs/heads/master
Commit: a01cd9d9353a1749ee85cf248ab71871e230f873
Parents: 2d30f0d
Author: Martin Tzvetanov Grigorov <mg...@apache.org>
Authored: Mon Aug 11 15:28:52 2014 +0200
Committer: Martin Tzvetanov Grigorov <mg...@apache.org>
Committed: Mon Aug 11 15:28:52 2014 +0200

----------------------------------------------------------------------
 .../java/org/apache/wicket/protocol/ws/api/registry/IKey.java    | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/wicket/blob/a01cd9d9/wicket-native-websocket/wicket-native-websocket-core/src/main/java/org/apache/wicket/protocol/ws/api/registry/IKey.java
----------------------------------------------------------------------
diff --git a/wicket-native-websocket/wicket-native-websocket-core/src/main/java/org/apache/wicket/protocol/ws/api/registry/IKey.java b/wicket-native-websocket/wicket-native-websocket-core/src/main/java/org/apache/wicket/protocol/ws/api/registry/IKey.java
index e05e76e..b0774dc 100644
--- a/wicket-native-websocket/wicket-native-websocket-core/src/main/java/org/apache/wicket/protocol/ws/api/registry/IKey.java
+++ b/wicket-native-websocket/wicket-native-websocket-core/src/main/java/org/apache/wicket/protocol/ws/api/registry/IKey.java
@@ -16,9 +16,11 @@
  */
 package org.apache.wicket.protocol.ws.api.registry;
 
+import org.apache.wicket.util.io.IClusterable;
+
 /**
  * A marker interface for keys that are used to find a web socket
  * connection in {@link IWebSocketConnectionRegistry}
  */
-public interface IKey
+public interface IKey extends IClusterable
 {}


[7/8] git commit: WICKET-5669 Mark page parameters with a flag where they have been read from

Posted by mg...@apache.org.
WICKET-5669 Mark page parameters with a flag where they have been read from

Simplify - no need to set INamedParameters.Type.MANUAL explicitly, it is the default.


Project: http://git-wip-us.apache.org/repos/asf/wicket/repo
Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/cb4590a2
Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/cb4590a2
Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/cb4590a2

Branch: refs/heads/master
Commit: cb4590a27febd29db3bd2939fc3fb6025c4c3691
Parents: a01cd9d
Author: Martin Tzvetanov Grigorov <mg...@apache.org>
Authored: Tue Aug 12 10:37:50 2014 +0200
Committer: Martin Tzvetanov Grigorov <mg...@apache.org>
Committed: Tue Aug 12 10:37:50 2014 +0200

----------------------------------------------------------------------
 .../wicket/cdi/ConversationPropagator.java      |  3 +-
 .../wicket/cdi/ConversationPropagatorTest.java  |  7 ++---
 .../wicket/cdi/ConversationPropagator.java      |  3 +-
 .../org/apache/wicket/RequestEncodingTest.java  |  3 +-
 .../apache/wicket/SharedResourceUrlTest.java    |  5 ++--
 .../core/request/mapper/CryptoMapperTest.java   |  7 ++---
 .../wicket/core/request/mapper/UrlInfoTest.java |  9 +++---
 .../html/basic/SimpleResponsePageClass.java     |  3 +-
 .../wicket/markup/html/form/FormTest.java       |  5 ++--
 .../markup/html/internal/EnclosureTest.java     |  9 +++---
 .../link/BookmarkableHomePageLinksPage.java     |  3 +-
 .../html/link/BookmarkablePageLinkTest.java     |  5 ++--
 .../markup/html/link/MountedPageLinkTest.java   | 10 +++----
 .../PageExpirationRecoveryTest.java             |  5 ++--
 .../redirect/abort/AbortExceptionTest.java      |  8 ++----
 ...elessPageManipulatingPageParametersTest.java |  3 +-
 .../wicket/session/DefaultPageFactoryTest.java  |  3 +-
 .../wicket/stateless/StatelessFormTest.java     |  5 ++--
 .../wicket/util/tester/FormTesterTest.java      |  7 ++---
 .../util/tester/MockFormFileUploadPage.java     |  6 ++--
 .../util/tester/MockPageParameterPage.java      |  3 +-
 .../wicket/util/tester/WicketTesterTest.java    |  7 ++---
 .../devutils/debugbar/InspectorDebugPanel.java  |  4 +--
 .../wicket/examples/asemail/MailTemplate.java   |  5 ++--
 .../compref/BookmarkablePageLinkPage.java       |  3 +-
 .../apache/wicket/examples/hangman/Guess.java   |  5 ++--
 .../wicket/examples/library/BookDetails.java    |  7 ++---
 .../apache/wicket/examples/linkomatic/Home.java |  2 +-
 .../apache/wicket/examples/niceurl/Page2.java   |  5 ++--
 .../wicket/examples/niceurl/mounted/Page5.java  |  5 ++--
 .../wicket/examples/source/SourcesPage.java     |  7 ++---
 .../examples/stateless/StatelessPage3.java      |  3 +-
 .../tree/content/BookmarkableFolderContent.java |  3 +-
 .../wicket/examples/hangman/HangManTest.java    |  5 ++--
 .../html/form/upload/UploadStatusResource.java  |  5 ++--
 .../html/repeater/data/table/DataTableTest.java |  5 ++--
 .../mapper/parameter/NamedParameterType.java    | 30 --------------------
 37 files changed, 73 insertions(+), 140 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/wicket/blob/cb4590a2/wicket-cdi-1.1/src/main/java/org/apache/wicket/cdi/ConversationPropagator.java
----------------------------------------------------------------------
diff --git a/wicket-cdi-1.1/src/main/java/org/apache/wicket/cdi/ConversationPropagator.java b/wicket-cdi-1.1/src/main/java/org/apache/wicket/cdi/ConversationPropagator.java
index 48487fe..7a85d98 100644
--- a/wicket-cdi-1.1/src/main/java/org/apache/wicket/cdi/ConversationPropagator.java
+++ b/wicket-cdi-1.1/src/main/java/org/apache/wicket/cdi/ConversationPropagator.java
@@ -33,7 +33,6 @@ import org.apache.wicket.request.cycle.AbstractRequestCycleListener;
 import org.apache.wicket.request.cycle.IRequestCycleListener;
 import org.apache.wicket.request.cycle.RequestCycle;
 import org.apache.wicket.request.handler.resource.ResourceReferenceRequestHandler;
-import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.apache.wicket.request.resource.PackageResourceReference;
 import org.apache.wicket.util.lang.Args;
@@ -141,7 +140,7 @@ public class ConversationPropagator extends AbstractRequestCycleListener
 			PageParameters parameters = getPageParameters(handler);
 			if (parameters != null)
 			{
-				parameters.set(CID, conversation.getId(), INamedParameters.Type.MANUAL);
+				parameters.set(CID, conversation.getId());
 				markPageWithConversationId(handler, conversation.getId());
 			}
 		}

http://git-wip-us.apache.org/repos/asf/wicket/blob/cb4590a2/wicket-cdi-1.1/src/test/java/org/apache/wicket/cdi/ConversationPropagatorTest.java
----------------------------------------------------------------------
diff --git a/wicket-cdi-1.1/src/test/java/org/apache/wicket/cdi/ConversationPropagatorTest.java b/wicket-cdi-1.1/src/test/java/org/apache/wicket/cdi/ConversationPropagatorTest.java
index e7e8924..eefebde 100644
--- a/wicket-cdi-1.1/src/test/java/org/apache/wicket/cdi/ConversationPropagatorTest.java
+++ b/wicket-cdi-1.1/src/test/java/org/apache/wicket/cdi/ConversationPropagatorTest.java
@@ -18,7 +18,6 @@ package org.apache.wicket.cdi;
 
 import org.apache.wicket.cdi.testapp.TestConversationPage;
 import org.apache.wicket.cdi.testapp.TestConversationalPage;
-import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.junit.Test;
 
@@ -53,7 +52,7 @@ public class ConversationPropagatorTest extends WicketCdiTestCase
 		configure(new CdiConfiguration());
 
 		tester.startPage(TestConversationalPage.class,
-				new PageParameters().add("pageType", "bookmarkable", INamedParameters.Type.MANUAL));
+				new PageParameters().add("pageType", "bookmarkable"));
 
 		int i;
 		for (i = 0; i < 3; i++)
@@ -95,7 +94,7 @@ public class ConversationPropagatorTest extends WicketCdiTestCase
 		configure(new CdiConfiguration().setPropagation(ConversationPropagation.ALL));
 
 		tester.startPage(TestConversationPage.class,
-				new PageParameters().add("pageType", "bookmarkable", INamedParameters.Type.MANUAL));
+				new PageParameters().add("pageType", "bookmarkable"));
 		int i;
 		for (i = 0; i < 3; i++)
 		{
@@ -116,7 +115,7 @@ public class ConversationPropagatorTest extends WicketCdiTestCase
 		configure(new CdiConfiguration());
 
 		tester.startPage(TestConversationPage.class,
-				new PageParameters().add("pageType", "bookmarkable", INamedParameters.Type.MANUAL));
+				new PageParameters().add("pageType", "bookmarkable"));
 		int i;
 		for (i = 0; i < 3; i++)
 		{

http://git-wip-us.apache.org/repos/asf/wicket/blob/cb4590a2/wicket-cdi/src/main/java/org/apache/wicket/cdi/ConversationPropagator.java
----------------------------------------------------------------------
diff --git a/wicket-cdi/src/main/java/org/apache/wicket/cdi/ConversationPropagator.java b/wicket-cdi/src/main/java/org/apache/wicket/cdi/ConversationPropagator.java
index 430609f..568e117 100644
--- a/wicket-cdi/src/main/java/org/apache/wicket/cdi/ConversationPropagator.java
+++ b/wicket-cdi/src/main/java/org/apache/wicket/cdi/ConversationPropagator.java
@@ -37,7 +37,6 @@ import org.apache.wicket.request.cycle.AbstractRequestCycleListener;
 import org.apache.wicket.request.cycle.IRequestCycleListener;
 import org.apache.wicket.request.cycle.RequestCycle;
 import org.apache.wicket.request.handler.resource.ResourceReferenceRequestHandler;
-import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.apache.wicket.request.resource.PackageResourceReference;
 import org.apache.wicket.util.lang.Args;
@@ -282,7 +281,7 @@ public class ConversationPropagator extends AbstractRequestCycleListener
 			PageParameters parameters = getPageParameters(handler);
 			if (parameters != null)
 			{
-				parameters.set(CID, conversation.getId(), INamedParameters.Type.MANUAL);
+				parameters.set(CID, conversation.getId());
 			}
 		}
 	}

http://git-wip-us.apache.org/repos/asf/wicket/blob/cb4590a2/wicket-core/src/test/java/org/apache/wicket/RequestEncodingTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/RequestEncodingTest.java b/wicket-core/src/test/java/org/apache/wicket/RequestEncodingTest.java
index c5d7a0d..b1985d7 100644
--- a/wicket-core/src/test/java/org/apache/wicket/RequestEncodingTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/RequestEncodingTest.java
@@ -16,7 +16,6 @@
  */
 package org.apache.wicket;
 
-import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.apache.wicket.util.tester.WicketTester;
 import org.junit.After;
@@ -65,7 +64,7 @@ public class RequestEncodingTest extends Assert
 	public void defaultTest()
 	{
 		tester.startPage(RedirectA.class,
-			new PageParameters().set("file", "umlaut-\u00E4-\u00F6-\u00FC", INamedParameters.Type.MANUAL));
+			new PageParameters().set("file", "umlaut-\u00E4-\u00F6-\u00FC"));
 		tester.assertRenderedPage(RedirectB.class);
 
 		String url2 = ((RedirectB)tester.getLastRenderedPage()).getInterceptContinuationURL();

http://git-wip-us.apache.org/repos/asf/wicket/blob/cb4590a2/wicket-core/src/test/java/org/apache/wicket/SharedResourceUrlTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/SharedResourceUrlTest.java b/wicket-core/src/test/java/org/apache/wicket/SharedResourceUrlTest.java
index 6e16fe6..947e16b 100644
--- a/wicket-core/src/test/java/org/apache/wicket/SharedResourceUrlTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/SharedResourceUrlTest.java
@@ -16,7 +16,6 @@
  */
 package org.apache.wicket;
 
-import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.apache.wicket.request.resource.PackageResourceReference;
 import org.apache.wicket.request.resource.ResourceReference;
@@ -51,13 +50,13 @@ public class SharedResourceUrlTest extends WicketTestCase
 	{
 		ResourceReference rr = new SharedResourceReference("test");
 		CharSequence url = tester.getRequestCycle()
-			.mapUrlFor(rr, new PageParameters().set("param", "value", INamedParameters.Type.MANUAL))
+			.mapUrlFor(rr, new PageParameters().set("param", "value"))
 			.toString();
 		assertEquals("wicket/resource/org.apache.wicket.Application/test?param=value", url);
 
 		rr = new PackageResourceReference(SharedResourceUrlTest.class, "test");
 		url = tester.getRequestCycle()
-			.mapUrlFor(rr, new PageParameters().set("param", "value", INamedParameters.Type.MANUAL))
+			.mapUrlFor(rr, new PageParameters().set("param", "value"))
 			.toString();
 		assertEquals("wicket/resource/org.apache.wicket.SharedResourceUrlTest/test?param=value",
 			url);

http://git-wip-us.apache.org/repos/asf/wicket/blob/cb4590a2/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/CryptoMapperTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/CryptoMapperTest.java b/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/CryptoMapperTest.java
index 0eb0653..fb4d2d7 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/CryptoMapperTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/CryptoMapperTest.java
@@ -32,7 +32,6 @@ import org.apache.wicket.request.Url;
 import org.apache.wicket.request.Url.StringMode;
 import org.apache.wicket.request.component.IRequestableComponent;
 import org.apache.wicket.request.handler.resource.ResourceReferenceRequestHandler;
-import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.apache.wicket.request.resource.PackageResourceReference;
 import org.apache.wicket.request.resource.UrlResourceReference;
@@ -179,8 +178,8 @@ public class CryptoMapperTest extends AbstractMapperTest
 		String expectedEncrypted = "ywKWg-Qpk7YQBiYCmj9MaAJSIV1gtssNinjiALijtet62VMQc2-sMK_RchttkidUpYM_cplXKeZSfGxBkvWzH_E_zWv4Ii7MNSm5nXKno7o/ywK6c/MK_c0/nji3c/Qpk1b/XKnba/c2-cd";
 
 		PageParameters expectedParameters = new PageParameters();
-		expectedParameters.add("namedKey1", "namedValue1", INamedParameters.Type.MANUAL);
-		expectedParameters.add("namedKey2", "namedValue2", INamedParameters.Type.MANUAL);
+		expectedParameters.add("namedKey1", "namedValue1");
+		expectedParameters.add("namedKey2", "namedValue2");
 		expectedParameters.set(0, "indexedValue1");
 		expectedParameters.set(1, "indexedValue2");
 		RenderPageRequestHandler renderPageRequestHandler = new RenderPageRequestHandler(
@@ -210,7 +209,7 @@ public class CryptoMapperTest extends AbstractMapperTest
 	{
 		String expectedEncrypted = "?namedKey1=namedValue1";
 		PageParameters expectedParameters = new PageParameters();
-		expectedParameters.add("namedKey1", "namedValue1", INamedParameters.Type.MANUAL);
+		expectedParameters.add("namedKey1", "namedValue1");
 
 		RenderPageRequestHandler renderPageRequestHandler = new RenderPageRequestHandler(
 			new PageProvider(tester.getApplication().getHomePage(), expectedParameters));

http://git-wip-us.apache.org/repos/asf/wicket/blob/cb4590a2/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/UrlInfoTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/UrlInfoTest.java b/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/UrlInfoTest.java
index 04cfcee..1014f52 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/UrlInfoTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/UrlInfoTest.java
@@ -17,9 +17,8 @@
 package org.apache.wicket.core.request.mapper;
 
 import org.apache.wicket.MockPage;
-import org.apache.wicket.request.http.WebRequest;
 import org.apache.wicket.core.request.mapper.AbstractBookmarkableMapper.UrlInfo;
-import org.apache.wicket.request.mapper.parameter.INamedParameters;
+import org.apache.wicket.request.http.WebRequest;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.junit.Assert;
 import org.junit.Test;
@@ -37,9 +36,9 @@ public class UrlInfoTest extends Assert
 	public void wicket4038()
 	{
 		PageParameters parameters = new PageParameters();
-		parameters.add(WebRequest.PARAM_AJAX, "true", INamedParameters.Type.MANUAL);
-		parameters.add(WebRequest.PARAM_AJAX_BASE_URL, "base/url", INamedParameters.Type.MANUAL);
-		parameters.add(WebRequest.PARAM_AJAX_REQUEST_ANTI_CACHE, "12345.6879", INamedParameters.Type.MANUAL);
+		parameters.add(WebRequest.PARAM_AJAX, "true");
+		parameters.add(WebRequest.PARAM_AJAX_BASE_URL, "base/url");
+		parameters.add(WebRequest.PARAM_AJAX_REQUEST_ANTI_CACHE, "12345.6879");
 
 		AbstractBookmarkableMapper.UrlInfo info = new UrlInfo(null, MockPage.class, parameters);
 		assertNull(info.getPageParameters());

http://git-wip-us.apache.org/repos/asf/wicket/blob/cb4590a2/wicket-core/src/test/java/org/apache/wicket/markup/html/basic/SimpleResponsePageClass.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/markup/html/basic/SimpleResponsePageClass.java b/wicket-core/src/test/java/org/apache/wicket/markup/html/basic/SimpleResponsePageClass.java
index 7b26684..84d3c13 100644
--- a/wicket-core/src/test/java/org/apache/wicket/markup/html/basic/SimpleResponsePageClass.java
+++ b/wicket-core/src/test/java/org/apache/wicket/markup/html/basic/SimpleResponsePageClass.java
@@ -18,7 +18,6 @@ package org.apache.wicket.markup.html.basic;
 
 import org.apache.wicket.markup.html.WebPage;
 import org.apache.wicket.markup.html.form.Form;
-import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 
 /**
@@ -42,7 +41,7 @@ public class SimpleResponsePageClass extends WebPage
 			protected void onSubmit()
 			{
 				// use Page "class"
-				setResponsePage(SimplePage.class, new PageParameters().set("test", "test", INamedParameters.Type.MANUAL));
+				setResponsePage(SimplePage.class, new PageParameters().set("test", "test"));
 			}
 		};
 		add(form);

http://git-wip-us.apache.org/repos/asf/wicket/blob/cb4590a2/wicket-core/src/test/java/org/apache/wicket/markup/html/form/FormTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/markup/html/form/FormTest.java b/wicket-core/src/test/java/org/apache/wicket/markup/html/form/FormTest.java
index 35b4c8a..e63458d 100644
--- a/wicket-core/src/test/java/org/apache/wicket/markup/html/form/FormTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/markup/html/form/FormTest.java
@@ -21,7 +21,6 @@ import org.apache.wicket.MockPageParametersAware;
 import org.apache.wicket.WicketTestCase;
 import org.apache.wicket.markup.IMarkupResourceStreamProvider;
 import org.apache.wicket.markup.html.WebPage;
-import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.apache.wicket.util.resource.IResourceStream;
 import org.apache.wicket.util.resource.StringResourceStream;
@@ -174,8 +173,8 @@ public class FormTest extends WicketTestCase
 	public void pageWithParameters() throws Exception
 	{
 		PageParameters parameters = new PageParameters();
-		parameters.add("first", "foo", INamedParameters.Type.MANUAL);
-		parameters.add("second", "bar", INamedParameters.Type.MANUAL);
+		parameters.add("first", "foo");
+		parameters.add("second", "bar");
 		executeTest(FormMethodTestPage.class, parameters, "pageWithParameters_expected.html");
 	}
 }

http://git-wip-us.apache.org/repos/asf/wicket/blob/cb4590a2/wicket-core/src/test/java/org/apache/wicket/markup/html/internal/EnclosureTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/markup/html/internal/EnclosureTest.java b/wicket-core/src/test/java/org/apache/wicket/markup/html/internal/EnclosureTest.java
index 289ad5c..0498cfa 100644
--- a/wicket-core/src/test/java/org/apache/wicket/markup/html/internal/EnclosureTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/markup/html/internal/EnclosureTest.java
@@ -30,7 +30,6 @@ import org.apache.wicket.markup.html.basic.Label;
 import org.apache.wicket.markup.html.form.CheckBox;
 import org.apache.wicket.markup.html.link.Link;
 import org.apache.wicket.mock.MockApplication;
-import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.apache.wicket.util.resource.IResourceStream;
 import org.apache.wicket.util.resource.StringResourceStream;
@@ -79,7 +78,7 @@ public class EnclosureTest extends WicketTestCase
 	@Test
 	public void testRenderHomePage4() throws Exception
 	{
-		executeTest(EnclosurePage_4.class, new PageParameters().set("visible", false, INamedParameters.Type.MANUAL),
+		executeTest(EnclosurePage_4.class, new PageParameters().set("visible", false),
 			"EnclosurePageExpectedResult_4.html");
 	}
 
@@ -89,7 +88,7 @@ public class EnclosureTest extends WicketTestCase
 	@Test
 	public void testRenderHomePage4_1() throws Exception
 	{
-		executeTest(EnclosurePage_4.class, new PageParameters().set("visible", true, INamedParameters.Type.MANUAL),
+		executeTest(EnclosurePage_4.class, new PageParameters().set("visible", true),
 			"EnclosurePageExpectedResult_4-1.html");
 	}
 
@@ -99,7 +98,7 @@ public class EnclosureTest extends WicketTestCase
 	@Test
 	public void testRenderHomePage5() throws Exception
 	{
-		executeTest(EnclosurePage_5.class, new PageParameters().set("visible", false, INamedParameters.Type.MANUAL),
+		executeTest(EnclosurePage_5.class, new PageParameters().set("visible", false),
 			"EnclosurePageExpectedResult_5.html");
 	}
 
@@ -109,7 +108,7 @@ public class EnclosureTest extends WicketTestCase
 	@Test
 	public void testRenderHomePage5_1() throws Exception
 	{
-		executeTest(EnclosurePage_5.class, new PageParameters().set("visible", true, INamedParameters.Type.MANUAL),
+		executeTest(EnclosurePage_5.class, new PageParameters().set("visible", true),
 			"EnclosurePageExpectedResult_5-1.html");
 	}
 

http://git-wip-us.apache.org/repos/asf/wicket/blob/cb4590a2/wicket-core/src/test/java/org/apache/wicket/markup/html/link/BookmarkableHomePageLinksPage.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/markup/html/link/BookmarkableHomePageLinksPage.java b/wicket-core/src/test/java/org/apache/wicket/markup/html/link/BookmarkableHomePageLinksPage.java
index f1df588..3c1b780 100644
--- a/wicket-core/src/test/java/org/apache/wicket/markup/html/link/BookmarkableHomePageLinksPage.java
+++ b/wicket-core/src/test/java/org/apache/wicket/markup/html/link/BookmarkableHomePageLinksPage.java
@@ -19,7 +19,6 @@ package org.apache.wicket.markup.html.link;
 import org.apache.wicket.Application;
 import org.apache.wicket.Page;
 import org.apache.wicket.markup.html.WebPage;
-import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 
 /**
@@ -38,7 +37,7 @@ public class BookmarkableHomePageLinksPage extends WebPage
 		Class<? extends Page> homePage = Application.get().getHomePage();
 		add(new BookmarkablePageLink<Void>("defaulthompage", homePage));
 		add(new BookmarkablePageLink<Void>("defaulthompagewithparams", homePage,
-			new PageParameters().set("param1",1, INamedParameters.Type.MANUAL).set("param2", "test", INamedParameters.Type.MANUAL)));
+			new PageParameters().set("param1", 1).set("param2", "test")));
 		add(new BookmarkablePageLink<Void>("defaulthompagewithpagemap", homePage));
 	}
 

http://git-wip-us.apache.org/repos/asf/wicket/blob/cb4590a2/wicket-core/src/test/java/org/apache/wicket/markup/html/link/BookmarkablePageLinkTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/markup/html/link/BookmarkablePageLinkTest.java b/wicket-core/src/test/java/org/apache/wicket/markup/html/link/BookmarkablePageLinkTest.java
index 1b0830f..f0412ef 100644
--- a/wicket-core/src/test/java/org/apache/wicket/markup/html/link/BookmarkablePageLinkTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/markup/html/link/BookmarkablePageLinkTest.java
@@ -18,7 +18,6 @@ package org.apache.wicket.markup.html.link;
 
 import org.apache.wicket.MockPageWithLink;
 import org.apache.wicket.WicketTestCase;
-import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.junit.Assert;
 import org.junit.Test;
@@ -59,7 +58,7 @@ public class BookmarkablePageLinkTest extends WicketTestCase
 	public void bookmarkableRequestWithInterceptWithParams() throws Exception
 	{
 		PageParameters pp = new PageParameters();
-		pp.set("test", "test", INamedParameters.Type.MANUAL);
+		pp.set("test", "test");
 
 		tester.startPage(BookmarkableThrowsInterceptPage.class, pp);
 
@@ -77,7 +76,7 @@ public class BookmarkablePageLinkTest extends WicketTestCase
 	{
 		BookmarkablePageLink<MockPageWithLink> link = new BookmarkablePageLink<MockPageWithLink>(
 			"link", MockPageWithLink.class);
-		link.getPageParameters().set("urlEscapeNeeded", "someone's ^b%a&d pa\"rameter", INamedParameters.Type.MANUAL);
+		link.getPageParameters().set("urlEscapeNeeded", "someone's ^b%a&d pa\"rameter");
 
 		tester.startComponentInPage(link, null);
 		String response = tester.getLastResponse().getDocument();

http://git-wip-us.apache.org/repos/asf/wicket/blob/cb4590a2/wicket-core/src/test/java/org/apache/wicket/markup/html/link/MountedPageLinkTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/markup/html/link/MountedPageLinkTest.java b/wicket-core/src/test/java/org/apache/wicket/markup/html/link/MountedPageLinkTest.java
index 0ea7156..69089e1 100644
--- a/wicket-core/src/test/java/org/apache/wicket/markup/html/link/MountedPageLinkTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/markup/html/link/MountedPageLinkTest.java
@@ -70,15 +70,13 @@ public class MountedPageLinkTest extends WicketTestCase
 	public void testPageParametersInLink()
 	{
 		PageWithLink page = tester.startPage(PageWithLink.class,
-			new PageParameters().add("param", "value", INamedParameters.Type.MANUAL));
+			new PageParameters().add("param", "value"));
 		Link<?> link = (Link<?>)page.get("link");
 		String url = link.getURL().toString();
 		if (mount)
-			assertTrue("URL for link should contain 'mount/value/part2': " + url, url.toString()
-				.contains("mount/value/part2"));
+			assertTrue("URL for link should contain 'mount/value/part2': " + url, url.contains("mount/value/part2"));
 		else
-			assertTrue("URL for link should contain 'param=value': " + url, url.toString()
-				.contains("param=value"));
+			assertTrue("URL for link should contain 'param=value': " + url, url.contains("param=value"));
 		tester.executeUrl(url);
 	}
 
@@ -90,7 +88,7 @@ public class MountedPageLinkTest extends WicketTestCase
 	public void testLinkOnExpiredPage()
 	{
 		PageWithLink page = tester.startPage(PageWithLink.class,
-			new PageParameters().add("param", "value", INamedParameters.Type.MANUAL));
+			new PageParameters().add("param", "value"));
 		assertEquals("value", page.getPageParameters().get("param").toString());
 		tester.assertContains("param=value");
 		Link<?> link = (Link<?>)page.get("link");

http://git-wip-us.apache.org/repos/asf/wicket/blob/cb4590a2/wicket-core/src/test/java/org/apache/wicket/page/expirationrecovery/PageExpirationRecoveryTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/page/expirationrecovery/PageExpirationRecoveryTest.java b/wicket-core/src/test/java/org/apache/wicket/page/expirationrecovery/PageExpirationRecoveryTest.java
index 11c077a..a75cd97 100644
--- a/wicket-core/src/test/java/org/apache/wicket/page/expirationrecovery/PageExpirationRecoveryTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/page/expirationrecovery/PageExpirationRecoveryTest.java
@@ -21,7 +21,6 @@ import static org.hamcrest.Matchers.is;
 
 import org.apache.wicket.WicketTestCase;
 import org.apache.wicket.protocol.http.PageExpiredException;
-import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.apache.wicket.settings.PageSettings;
 import org.apache.wicket.util.tester.FormTester;
@@ -38,8 +37,8 @@ public class PageExpirationRecoveryTest extends WicketTestCase
 {
 
 	private final PageParameters parameters = new PageParameters()
-			.set("a", "b", INamedParameters.Type.MANUAL)
-			.set("c", "d", INamedParameters.Type.MANUAL);
+			.set("a", "b")
+			.set("c", "d");
 
 	@Before
 	public void before()

http://git-wip-us.apache.org/repos/asf/wicket/blob/cb4590a2/wicket-core/src/test/java/org/apache/wicket/redirect/abort/AbortExceptionTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/redirect/abort/AbortExceptionTest.java b/wicket-core/src/test/java/org/apache/wicket/redirect/abort/AbortExceptionTest.java
index 2c6e3e0..e9c7b0a 100644
--- a/wicket-core/src/test/java/org/apache/wicket/redirect/abort/AbortExceptionTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/redirect/abort/AbortExceptionTest.java
@@ -16,12 +16,10 @@
  */
 package org.apache.wicket.redirect.abort;
 
-import org.apache.wicket.request.mapper.parameter.INamedParameters;
-import org.junit.Assert;
-
 import org.apache.wicket.WicketTestCase;
 import org.apache.wicket.request.http.flow.AbortWithHttpErrorCodeException;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
+import org.junit.Assert;
 import org.junit.Test;
 
 /**
@@ -40,7 +38,7 @@ public class AbortExceptionTest extends WicketTestCase
 	@Test
 	public void testNoAbort()
 	{
-		tester.startPage(AbortExceptionPage.class, new PageParameters().set("trigger", false, INamedParameters.Type.MANUAL));
+		tester.startPage(AbortExceptionPage.class, new PageParameters().set("trigger", false));
 		Assert.assertEquals(1234, tester.getLastResponse().getStatus());
 	}
 
@@ -52,7 +50,7 @@ public class AbortExceptionTest extends WicketTestCase
 	{
 		try
 		{
-			tester.startPage(AbortExceptionPage.class, new PageParameters().set("trigger", true, INamedParameters.Type.MANUAL));
+			tester.startPage(AbortExceptionPage.class, new PageParameters().set("trigger", true));
 			Assert.assertEquals(1234, tester.getLastResponse().getStatus()); // this will
 			// fail
 		}

http://git-wip-us.apache.org/repos/asf/wicket/blob/cb4590a2/wicket-core/src/test/java/org/apache/wicket/request/handler/render/StatelessPageManipulatingPageParametersTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/request/handler/render/StatelessPageManipulatingPageParametersTest.java b/wicket-core/src/test/java/org/apache/wicket/request/handler/render/StatelessPageManipulatingPageParametersTest.java
index 00254ef..4157766 100644
--- a/wicket-core/src/test/java/org/apache/wicket/request/handler/render/StatelessPageManipulatingPageParametersTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/request/handler/render/StatelessPageManipulatingPageParametersTest.java
@@ -22,7 +22,6 @@ import org.apache.wicket.markup.IMarkupResourceStreamProvider;
 import org.apache.wicket.markup.html.WebPage;
 import org.apache.wicket.markup.html.form.StatelessForm;
 import org.apache.wicket.protocol.http.WebApplication;
-import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.apache.wicket.util.resource.IResourceStream;
 import org.apache.wicket.util.resource.StringResourceStream;
@@ -62,7 +61,7 @@ public class StatelessPageManipulatingPageParametersTest extends WicketTestCase
 				protected void onSubmit()
 				{
 					PageParameters parameters = new PageParameters();
-					parameters.add("login", "", INamedParameters.Type.MANUAL);
+					parameters.add("login", "");
 					setResponsePage(SecondPage.class, parameters);
 				}
 			};

http://git-wip-us.apache.org/repos/asf/wicket/blob/cb4590a2/wicket-core/src/test/java/org/apache/wicket/session/DefaultPageFactoryTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/session/DefaultPageFactoryTest.java b/wicket-core/src/test/java/org/apache/wicket/session/DefaultPageFactoryTest.java
index 910fbe0..7f372ba 100644
--- a/wicket-core/src/test/java/org/apache/wicket/session/DefaultPageFactoryTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/session/DefaultPageFactoryTest.java
@@ -22,7 +22,6 @@ import org.apache.wicket.WicketTestCase;
 import org.apache.wicket.markup.html.WebPage;
 import org.apache.wicket.request.flow.ResetResponseException;
 import org.apache.wicket.request.handler.EmptyRequestHandler;
-import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.junit.Rule;
 import org.junit.Test;
@@ -188,7 +187,7 @@ public class DefaultPageFactoryTest extends WicketTestCase
 		expectedException.expectMessage("Can't instantiate page using constructor 'private org.apache.wicket.session.DefaultPageFactoryTest$PrivateConstructorWithParametersPage(org.apache.wicket.request.mapper.parameter.PageParameters)' and argument 'key=[value]'. This constructor is private!");
 
 		PageParameters parameters = new PageParameters();
-		parameters.add("key", "value", INamedParameters.Type.MANUAL);
+		parameters.add("key", "value");
 		pageFactory.newPage(PrivateConstructorWithParametersPage.class, parameters);
 	}
 

http://git-wip-us.apache.org/repos/asf/wicket/blob/cb4590a2/wicket-core/src/test/java/org/apache/wicket/stateless/StatelessFormTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/stateless/StatelessFormTest.java b/wicket-core/src/test/java/org/apache/wicket/stateless/StatelessFormTest.java
index e5de4c3..4150d91 100644
--- a/wicket-core/src/test/java/org/apache/wicket/stateless/StatelessFormTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/stateless/StatelessFormTest.java
@@ -20,7 +20,6 @@ import org.apache.wicket.Page;
 import org.apache.wicket.WicketTestCase;
 import org.apache.wicket.mock.MockApplication;
 import org.apache.wicket.protocol.http.WebApplication;
-import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.apache.wicket.stateless.pages.HomePage;
 import org.apache.wicket.stateless.pages.LoginPage;
@@ -100,8 +99,8 @@ public class StatelessFormTest extends WicketTestCase
 	public void pageWithParameters() throws Exception
 	{
 		PageParameters parameters = new PageParameters();
-		parameters.add("first", "foo", INamedParameters.Type.MANUAL);
-		parameters.add("second", "bar", INamedParameters.Type.MANUAL);
+		parameters.add("first", "foo");
+		parameters.add("second", "bar");
 		executeTest(StatelessPageWithForm.class, parameters, "StatelessPageWithForm_expected.html");
 	}
 

http://git-wip-us.apache.org/repos/asf/wicket/blob/cb4590a2/wicket-core/src/test/java/org/apache/wicket/util/tester/FormTesterTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/util/tester/FormTesterTest.java b/wicket-core/src/test/java/org/apache/wicket/util/tester/FormTesterTest.java
index 0e30610..7da5805 100644
--- a/wicket-core/src/test/java/org/apache/wicket/util/tester/FormTesterTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/util/tester/FormTesterTest.java
@@ -31,7 +31,6 @@ import org.apache.wicket.markup.html.form.DropDownChoice;
 import org.apache.wicket.markup.html.form.Form;
 import org.apache.wicket.markup.html.form.upload.FileUpload;
 import org.apache.wicket.model.Model;
-import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.apache.wicket.util.file.File;
 import org.apache.wicket.util.resource.IResourceStream;
@@ -198,7 +197,7 @@ public class FormTesterTest extends WicketTestCase
 	@Test
 	public void submitMultipartForm()
 	{
-		tester.startPage(MockFormFileUploadPage.class, new PageParameters().set("required", false, INamedParameters.Type.MANUAL));
+		tester.startPage(MockFormFileUploadPage.class, new PageParameters().set("required", false));
 		MockFormFileUploadPage page = (MockFormFileUploadPage)tester.getLastRenderedPage();
 		MockDomainObjectFileUpload domainObject = page.getDomainObject();
 
@@ -263,9 +262,9 @@ public class FormTesterTest extends WicketTestCase
 
 			public TestPage()
 			{
-				Form<Object> form = new Form<Object>("form");
+				Form<Object> form = new Form<>("form");
 				add(form);
-				List<String> choices = Arrays.asList(new String[] { "opt 1", "opt 2" });
+				List<String> choices = Arrays.asList("opt 1", "opt 2");
 				form.add(new DropDownChoice<String>("selector", Model.of(""), choices)
 				{
 					@Override

http://git-wip-us.apache.org/repos/asf/wicket/blob/cb4590a2/wicket-core/src/test/java/org/apache/wicket/util/tester/MockFormFileUploadPage.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/util/tester/MockFormFileUploadPage.java b/wicket-core/src/test/java/org/apache/wicket/util/tester/MockFormFileUploadPage.java
index 0a22139..ec5cf1e 100644
--- a/wicket-core/src/test/java/org/apache/wicket/util/tester/MockFormFileUploadPage.java
+++ b/wicket-core/src/test/java/org/apache/wicket/util/tester/MockFormFileUploadPage.java
@@ -25,7 +25,6 @@ import org.apache.wicket.markup.html.form.upload.FileUpload;
 import org.apache.wicket.markup.html.form.upload.FileUploadField;
 import org.apache.wicket.model.CompoundPropertyModel;
 import org.apache.wicket.model.util.ListModel;
-import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.apache.wicket.util.lang.Bytes;
 import org.apache.wicket.util.string.StringValue;
@@ -77,10 +76,9 @@ public class MockFormFileUploadPage extends WebPage
 	/**
 	 * Construct.
 	 */
-	@SuppressWarnings("deprecation")
 	public MockFormFileUploadPage()
 	{
-		this(new PageParameters().set("required", "true", INamedParameters.Type.MANUAL));
+		this(new PageParameters().set("required", "true"));
 	}
 
 	/**
@@ -92,7 +90,7 @@ public class MockFormFileUploadPage extends WebPage
 	{
 		domainObject = new MockDomainObjectFileUpload();
 		Form<MockDomainObjectFileUpload> form = new Form<MockDomainObjectFileUpload>("form",
-			new CompoundPropertyModel<MockDomainObjectFileUpload>(domainObject))
+			new CompoundPropertyModel<>(domainObject))
 		{
 			private static final long serialVersionUID = 1L;
 

http://git-wip-us.apache.org/repos/asf/wicket/blob/cb4590a2/wicket-core/src/test/java/org/apache/wicket/util/tester/MockPageParameterPage.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/util/tester/MockPageParameterPage.java b/wicket-core/src/test/java/org/apache/wicket/util/tester/MockPageParameterPage.java
index 65c1105..3bac594 100644
--- a/wicket-core/src/test/java/org/apache/wicket/util/tester/MockPageParameterPage.java
+++ b/wicket-core/src/test/java/org/apache/wicket/util/tester/MockPageParameterPage.java
@@ -19,7 +19,6 @@ package org.apache.wicket.util.tester;
 import org.apache.wicket.markup.html.WebPage;
 import org.apache.wicket.markup.html.basic.Label;
 import org.apache.wicket.markup.html.link.BookmarkablePageLink;
-import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 
 /**
@@ -39,7 +38,7 @@ public class MockPageParameterPage extends WebPage
 	public MockPageParameterPage(PageParameters pageParameters)
 	{
 		add(new BookmarkablePageLink<Void>("link", MockPageParameterPage.class,
-			new PageParameters().set("id", 1, INamedParameters.Type.MANUAL)));
+			new PageParameters().set("id", 1)));
 		add(new Label("label", pageParameters.get("id").toString()));
 	}
 

http://git-wip-us.apache.org/repos/asf/wicket/blob/cb4590a2/wicket-core/src/test/java/org/apache/wicket/util/tester/WicketTesterTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/util/tester/WicketTesterTest.java b/wicket-core/src/test/java/org/apache/wicket/util/tester/WicketTesterTest.java
index e6ffeb0..8754fc2 100644
--- a/wicket-core/src/test/java/org/apache/wicket/util/tester/WicketTesterTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/util/tester/WicketTesterTest.java
@@ -57,7 +57,6 @@ import org.apache.wicket.request.IRequestParameters;
 import org.apache.wicket.request.Url;
 import org.apache.wicket.request.component.IRequestableComponent;
 import org.apache.wicket.request.flow.RedirectToUrlException;
-import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.apache.wicket.request.resource.ByteArrayResource;
 import org.apache.wicket.request.resource.IResource;
@@ -750,7 +749,7 @@ public class WicketTesterTest extends WicketTestCase
 	public void setQueryParameterWhenRequestHasAnQueryUrl()
 	{
 		PageParameters parameters = new PageParameters();
-		parameters.set("q_1", "q_1_value", INamedParameters.Type.MANUAL);
+		parameters.set("q_1", "q_1_value");
 		IPageProvider testPageProvider = new PageProvider(MockPageParametersAware.class, parameters);
 		IRequestHandler pageRequestHandler = new BookmarkablePageRequestHandler(testPageProvider);
 		Url url = tester.getApplication().getRootRequestMapper().mapHandler(pageRequestHandler);
@@ -771,8 +770,8 @@ public class WicketTesterTest extends WicketTestCase
 	public void setMultiValueQueryParameter()
 	{
 		PageParameters parameters = new PageParameters();
-		parameters.add("q_1", "q_1_value_1", INamedParameters.Type.MANUAL);
-		parameters.add("q_1", "q_1_value_2", INamedParameters.Type.MANUAL);
+		parameters.add("q_1", "q_1_value_1");
+		parameters.add("q_1", "q_1_value_2");
 		IPageProvider testPageProvider = new PageProvider(MockPageParametersAware.class, parameters);
 		IRequestHandler pageRequestHandler = new BookmarkablePageRequestHandler(testPageProvider);
 		Url url = tester.getApplication().getRootRequestMapper().mapHandler(pageRequestHandler);

http://git-wip-us.apache.org/repos/asf/wicket/blob/cb4590a2/wicket-devutils/src/main/java/org/apache/wicket/devutils/debugbar/InspectorDebugPanel.java
----------------------------------------------------------------------
diff --git a/wicket-devutils/src/main/java/org/apache/wicket/devutils/debugbar/InspectorDebugPanel.java b/wicket-devutils/src/main/java/org/apache/wicket/devutils/debugbar/InspectorDebugPanel.java
index 877e49e..33a0705 100644
--- a/wicket-devutils/src/main/java/org/apache/wicket/devutils/debugbar/InspectorDebugPanel.java
+++ b/wicket-devutils/src/main/java/org/apache/wicket/devutils/debugbar/InspectorDebugPanel.java
@@ -21,7 +21,6 @@ import org.apache.wicket.Page;
 import org.apache.wicket.devutils.inspector.InspectorPage;
 import org.apache.wicket.model.IModel;
 import org.apache.wicket.model.Model;
-import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.apache.wicket.request.resource.PackageResourceReference;
 import org.apache.wicket.request.resource.ResourceReference;
@@ -52,6 +51,7 @@ public class InspectorDebugPanel extends StandardDebugPanel
 	 * Construct.
 	 * 
 	 * @param id
+	 *          The component id
 	 */
 	public InspectorDebugPanel(final String id)
 	{
@@ -80,7 +80,7 @@ public class InspectorDebugPanel extends StandardDebugPanel
 	protected PageParameters getLinkPageParameters()
 	{
 		PageParameters params = new PageParameters();
-		params.add("pageId", getPage().getId(), INamedParameters.Type.MANUAL);
+		params.add("pageId", getPage().getId());
 		return params;
 	}
 }

http://git-wip-us.apache.org/repos/asf/wicket/blob/cb4590a2/wicket-examples/src/main/java/org/apache/wicket/examples/asemail/MailTemplate.java
----------------------------------------------------------------------
diff --git a/wicket-examples/src/main/java/org/apache/wicket/examples/asemail/MailTemplate.java b/wicket-examples/src/main/java/org/apache/wicket/examples/asemail/MailTemplate.java
index e0cbbdc..6042505 100644
--- a/wicket-examples/src/main/java/org/apache/wicket/examples/asemail/MailTemplate.java
+++ b/wicket-examples/src/main/java/org/apache/wicket/examples/asemail/MailTemplate.java
@@ -34,7 +34,6 @@ import org.apache.wicket.markup.html.panel.Panel;
 import org.apache.wicket.model.Model;
 import org.apache.wicket.model.PropertyModel;
 import org.apache.wicket.request.Url;
-import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.apache.wicket.request.resource.PackageResourceReference;
 import org.apache.wicket.util.template.PackageTextTemplate;
@@ -70,7 +69,7 @@ public class MailTemplate extends WicketExamplePage
 		final Form<Void> form = new Form<>("form");
 		add(form);
 
-		TextField<String> nameTextField = new TextField<String>("name", new PropertyModel<String>(
+		TextField<String> nameTextField = new TextField<>("name", new PropertyModel<String>(
 			MailTemplate.this, "name"));
 		nameTextField.setOutputMarkupId(true);
 		form.add(nameTextField);
@@ -87,7 +86,7 @@ public class MailTemplate extends WicketExamplePage
 			protected void onSubmit(AjaxRequestTarget target, Form<?> form)
 			{
 				PageParameters parameters = new PageParameters();
-				parameters.set("name", name, INamedParameters.Type.MANUAL);
+				parameters.set("name", name);
 				PageProvider pageProvider = new PageProvider(TemplateBasedOnPage. class, parameters);
 				CharSequence pageHtml = ComponentRenderer.renderPage(pageProvider);
 

http://git-wip-us.apache.org/repos/asf/wicket/blob/cb4590a2/wicket-examples/src/main/java/org/apache/wicket/examples/compref/BookmarkablePageLinkPage.java
----------------------------------------------------------------------
diff --git a/wicket-examples/src/main/java/org/apache/wicket/examples/compref/BookmarkablePageLinkPage.java b/wicket-examples/src/main/java/org/apache/wicket/examples/compref/BookmarkablePageLinkPage.java
index 3222121..7c6c3da 100644
--- a/wicket-examples/src/main/java/org/apache/wicket/examples/compref/BookmarkablePageLinkPage.java
+++ b/wicket-examples/src/main/java/org/apache/wicket/examples/compref/BookmarkablePageLinkPage.java
@@ -18,7 +18,6 @@ package org.apache.wicket.examples.compref;
 
 import org.apache.wicket.examples.WicketExamplePage;
 import org.apache.wicket.markup.html.link.BookmarkablePageLink;
-import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 
 
@@ -49,7 +48,7 @@ public class BookmarkablePageLinkPage extends WicketExamplePage
 		// thus be strings
 		PageParameters parameters = new PageParameters();
 		parameters.set("message",
-			"This message was passed as a page parameter argument", INamedParameters.Type.MANUAL);
+			"This message was passed as a page parameter argument");
 		add(new BookmarkablePageLink<>("pageLinkWithArgs", BookmarkablePage.class, parameters));
 	}
 

http://git-wip-us.apache.org/repos/asf/wicket/blob/cb4590a2/wicket-examples/src/main/java/org/apache/wicket/examples/hangman/Guess.java
----------------------------------------------------------------------
diff --git a/wicket-examples/src/main/java/org/apache/wicket/examples/hangman/Guess.java b/wicket-examples/src/main/java/org/apache/wicket/examples/hangman/Guess.java
index 494c419..47cdfc3 100644
--- a/wicket-examples/src/main/java/org/apache/wicket/examples/hangman/Guess.java
+++ b/wicket-examples/src/main/java/org/apache/wicket/examples/hangman/Guess.java
@@ -24,7 +24,6 @@ import org.apache.wicket.markup.html.list.ListItem;
 import org.apache.wicket.markup.html.list.ListView;
 import org.apache.wicket.model.Model;
 import org.apache.wicket.model.PropertyModel;
-import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 
 /**
@@ -96,10 +95,10 @@ public class Guess extends HangmanPage
 				};
 
 				PageParameters parameters = new PageParameters();
-				parameters.set(Letter.PARAMETER_LETTER, letter.asString(), INamedParameters.Type.MANUAL);
+				parameters.set(Letter.PARAMETER_LETTER, letter.asString());
 				if (letter.isGuessed())
 				{
-					parameters.set(Letter.PARAMETER_GUESSED, true, INamedParameters.Type.MANUAL);
+					parameters.set(Letter.PARAMETER_GUESSED, true);
 				}
 				link.add(new Image("image", Letter.LETTER_RESOURCE_REFERENCE, parameters));
 				listItem.add(link);

http://git-wip-us.apache.org/repos/asf/wicket/blob/cb4590a2/wicket-examples/src/main/java/org/apache/wicket/examples/library/BookDetails.java
----------------------------------------------------------------------
diff --git a/wicket-examples/src/main/java/org/apache/wicket/examples/library/BookDetails.java b/wicket-examples/src/main/java/org/apache/wicket/examples/library/BookDetails.java
index e65422b..e3ccb58 100644
--- a/wicket-examples/src/main/java/org/apache/wicket/examples/library/BookDetails.java
+++ b/wicket-examples/src/main/java/org/apache/wicket/examples/library/BookDetails.java
@@ -23,7 +23,6 @@ import org.apache.wicket.examples.library.Book.WritingStyle;
 import org.apache.wicket.markup.html.basic.Label;
 import org.apache.wicket.markup.html.link.BookmarkablePageLink;
 import org.apache.wicket.model.Model;
-import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.apache.wicket.util.string.StringList;
 import org.apache.wicket.util.string.StringValueConversionException;
@@ -86,7 +85,7 @@ public final class BookDetails extends AuthenticatedWebPage
 
 		Label writingStylesLabel = new Label("writingStyles", writingStyles);
 
-		final AttributeModifier italic = new AttributeModifier("class", new Model<String>("italic"))
+		final AttributeModifier italic = new AttributeModifier("class", new Model<>("italic"))
 		{
 			@Override
 			public boolean isEnabled(Component component)
@@ -113,12 +112,12 @@ public final class BookDetails extends AuthenticatedWebPage
 	public static BookmarkablePageLink<Void> link(final String name, final Book book,
 		final String noBookTitle)
 	{
-		final BookmarkablePageLink<Void> link = new BookmarkablePageLink<Void>(name,
+		final BookmarkablePageLink<Void> link = new BookmarkablePageLink<>(name,
 			BookDetails.class);
 
 		if (book != null)
 		{
-			link.getPageParameters().add("id", book.getId(), INamedParameters.Type.MANUAL);
+			link.getPageParameters().add("id", book.getId());
 			link.add(new Label("title", new Model<>(book)));
 		}
 		else

http://git-wip-us.apache.org/repos/asf/wicket/blob/cb4590a2/wicket-examples/src/main/java/org/apache/wicket/examples/linkomatic/Home.java
----------------------------------------------------------------------
diff --git a/wicket-examples/src/main/java/org/apache/wicket/examples/linkomatic/Home.java b/wicket-examples/src/main/java/org/apache/wicket/examples/linkomatic/Home.java
index a50e37f..314eead 100644
--- a/wicket-examples/src/main/java/org/apache/wicket/examples/linkomatic/Home.java
+++ b/wicket-examples/src/main/java/org/apache/wicket/examples/linkomatic/Home.java
@@ -100,7 +100,7 @@ public class Home extends WicketExamplePage
 		// Link to Page3 is an external link which takes a parameter
 		BookmarkablePageLink<Void> page3Link = new BookmarkablePageLink<>("page3Link", Page3.class);
 		page3Link.getPageParameters()
-				.add("bookmarkparameter", "3++2 & 5 � >< space + �", INamedParameters.Type.MANUAL);
+				.add("bookmarkparameter", "3++2 & 5 � >< space + �");
 		add(page3Link);
 
 		// Link to BookDetails page

http://git-wip-us.apache.org/repos/asf/wicket/blob/cb4590a2/wicket-examples/src/main/java/org/apache/wicket/examples/niceurl/Page2.java
----------------------------------------------------------------------
diff --git a/wicket-examples/src/main/java/org/apache/wicket/examples/niceurl/Page2.java b/wicket-examples/src/main/java/org/apache/wicket/examples/niceurl/Page2.java
index 2a4d8ca..d856113 100644
--- a/wicket-examples/src/main/java/org/apache/wicket/examples/niceurl/Page2.java
+++ b/wicket-examples/src/main/java/org/apache/wicket/examples/niceurl/Page2.java
@@ -21,7 +21,6 @@ import java.util.Random;
 import org.apache.wicket.examples.WicketExamplePage;
 import org.apache.wicket.markup.html.basic.Label;
 import org.apache.wicket.markup.html.link.BookmarkablePageLink;
-import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 
 
@@ -50,8 +49,8 @@ public class Page2 extends WicketExamplePage
 		String newP2 = String.valueOf(random.nextInt());
 
 		PageParameters params = new PageParameters();
-		params.set("param1", newP1 + " " + newP2, INamedParameters.Type.MANUAL);
-		params.set("param2", newP2 + " " + newP1, INamedParameters.Type.MANUAL);
+		params.set("param1", newP1 + " " + newP2);
+		params.set("param2", newP2 + " " + newP1);
 
 		BookmarkablePageLink<?> link = new BookmarkablePageLink<>("refreshLink", getClass(), params);
 		add(link);

http://git-wip-us.apache.org/repos/asf/wicket/blob/cb4590a2/wicket-examples/src/main/java/org/apache/wicket/examples/niceurl/mounted/Page5.java
----------------------------------------------------------------------
diff --git a/wicket-examples/src/main/java/org/apache/wicket/examples/niceurl/mounted/Page5.java b/wicket-examples/src/main/java/org/apache/wicket/examples/niceurl/mounted/Page5.java
index ce7ee44..d87a12a 100644
--- a/wicket-examples/src/main/java/org/apache/wicket/examples/niceurl/mounted/Page5.java
+++ b/wicket-examples/src/main/java/org/apache/wicket/examples/niceurl/mounted/Page5.java
@@ -23,7 +23,6 @@ import org.apache.wicket.examples.WicketExamplePage;
 import org.apache.wicket.examples.niceurl.Home;
 import org.apache.wicket.markup.html.basic.Label;
 import org.apache.wicket.markup.html.link.BookmarkablePageLink;
-import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 
 
@@ -61,8 +60,8 @@ public class Page5 extends WicketExamplePage
 		String newP2 = String.valueOf(random.nextInt());
 
 		PageParameters params = new PageParameters();
-		params.set("param1", newP1, INamedParameters.Type.MANUAL);
-		params.set("param2", newP2, INamedParameters.Type.MANUAL);
+		params.set("param1", newP1);
+		params.set("param2", newP2);
 
 		BookmarkablePageLink<?> link = new BookmarkablePageLink<>("refreshLink", Page5.class, params);
 		add(link);

http://git-wip-us.apache.org/repos/asf/wicket/blob/cb4590a2/wicket-examples/src/main/java/org/apache/wicket/examples/source/SourcesPage.java
----------------------------------------------------------------------
diff --git a/wicket-examples/src/main/java/org/apache/wicket/examples/source/SourcesPage.java b/wicket-examples/src/main/java/org/apache/wicket/examples/source/SourcesPage.java
index eb1e14a..dd30e07 100644
--- a/wicket-examples/src/main/java/org/apache/wicket/examples/source/SourcesPage.java
+++ b/wicket-examples/src/main/java/org/apache/wicket/examples/source/SourcesPage.java
@@ -49,7 +49,6 @@ import org.apache.wicket.markup.html.list.ListView;
 import org.apache.wicket.model.AbstractReadOnlyModel;
 import org.apache.wicket.model.LoadableDetachableModel;
 import org.apache.wicket.request.http.handler.ErrorCodeRequestHandler;
-import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.apache.wicket.util.io.IOUtils;
 import org.apache.wicket.util.lang.PackageName;
@@ -173,7 +172,7 @@ public class SourcesPage extends WebPage
 
 		private List<String> get(Class<?> scope)
 		{
-			List<String> resources = new ArrayList<String>();
+			List<String> resources = new ArrayList<>();
 
 			String packageRef = Strings.replaceAll(PackageName.forClass(scope).getName(), ".", "/")
 				.toString();
@@ -451,10 +450,10 @@ public class SourcesPage extends WebPage
 	public static PageParameters generatePageParameters(Class<? extends Page> clazz, String fileName)
 	{
 		PageParameters p = new PageParameters();
-		p.set(PAGE_CLASS, clazz.getName(), INamedParameters.Type.MANUAL);
+		p.set(PAGE_CLASS, clazz.getName());
 		if (fileName != null)
 		{
-			p.set(SOURCE, fileName, INamedParameters.Type.MANUAL);
+			p.set(SOURCE, fileName);
 		}
 		return p;
 	}

http://git-wip-us.apache.org/repos/asf/wicket/blob/cb4590a2/wicket-examples/src/main/java/org/apache/wicket/examples/stateless/StatelessPage3.java
----------------------------------------------------------------------
diff --git a/wicket-examples/src/main/java/org/apache/wicket/examples/stateless/StatelessPage3.java b/wicket-examples/src/main/java/org/apache/wicket/examples/stateless/StatelessPage3.java
index c1c1b84..38e9735 100644
--- a/wicket-examples/src/main/java/org/apache/wicket/examples/stateless/StatelessPage3.java
+++ b/wicket-examples/src/main/java/org/apache/wicket/examples/stateless/StatelessPage3.java
@@ -23,7 +23,6 @@ import org.apache.wicket.markup.html.form.TextField;
 import org.apache.wicket.markup.html.link.BookmarkablePageLink;
 import org.apache.wicket.markup.html.panel.FeedbackPanel;
 import org.apache.wicket.model.PropertyModel;
-import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.validation.validator.RangeValidator;
 
 /**
@@ -79,7 +78,7 @@ public class StatelessPage3 extends WicketExamplePage
 				info("Submitted text: " + field.getDefaultModelObject());
 
 				// store the value in page parameters
-				getPage().getPageParameters().set(PARAMETER_NAME, number, INamedParameters.Type.MANUAL);
+				getPage().getPageParameters().set(PARAMETER_NAME, number);
 			}
 
 		};

http://git-wip-us.apache.org/repos/asf/wicket/blob/cb4590a2/wicket-examples/src/main/java/org/apache/wicket/examples/tree/content/BookmarkableFolderContent.java
----------------------------------------------------------------------
diff --git a/wicket-examples/src/main/java/org/apache/wicket/examples/tree/content/BookmarkableFolderContent.java b/wicket-examples/src/main/java/org/apache/wicket/examples/tree/content/BookmarkableFolderContent.java
index 115551a..b0e016c 100644
--- a/wicket-examples/src/main/java/org/apache/wicket/examples/tree/content/BookmarkableFolderContent.java
+++ b/wicket-examples/src/main/java/org/apache/wicket/examples/tree/content/BookmarkableFolderContent.java
@@ -24,7 +24,6 @@ import org.apache.wicket.extensions.markup.html.repeater.tree.AbstractTree;
 import org.apache.wicket.extensions.markup.html.repeater.tree.content.Folder;
 import org.apache.wicket.markup.html.link.BookmarkablePageLink;
 import org.apache.wicket.model.IModel;
-import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 
 /**
@@ -68,7 +67,7 @@ public class BookmarkableFolderContent extends Content
 				else
 				{
 					PageParameters parameters = new PageParameters();
-					parameters.add("foo", foo.getId(), INamedParameters.Type.MANUAL);
+					parameters.add("foo", foo.getId());
 
 					return new BookmarkablePageLink<>(id, tree.getPage().getClass(), parameters);
 				}

http://git-wip-us.apache.org/repos/asf/wicket/blob/cb4590a2/wicket-examples/src/test/java/org/apache/wicket/examples/hangman/HangManTest.java
----------------------------------------------------------------------
diff --git a/wicket-examples/src/test/java/org/apache/wicket/examples/hangman/HangManTest.java b/wicket-examples/src/test/java/org/apache/wicket/examples/hangman/HangManTest.java
index 5991c9f..b5bb61e 100644
--- a/wicket-examples/src/test/java/org/apache/wicket/examples/hangman/HangManTest.java
+++ b/wicket-examples/src/test/java/org/apache/wicket/examples/hangman/HangManTest.java
@@ -17,7 +17,6 @@
 package org.apache.wicket.examples.hangman;
 
 import org.apache.wicket.markup.html.link.Link;
-import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.apache.wicket.util.tester.WicketTester;
 import org.junit.Assert;
@@ -144,7 +143,7 @@ public class HangManTest extends Assert
 		WicketTester tester = new WicketTester(new HangmanApplication());
 		try
 		{
-			tester.startPage(Home.class, new PageParameters().set("word", "hangman", INamedParameters.Type.MANUAL));
+			tester.startPage(Home.class, new PageParameters().set("word", "hangman"));
 			tester.assertComponent("start", Link.class);
 			tester.assertContains("Wicket Examples - hangman");
 			tester.clickLink("start");
@@ -174,7 +173,7 @@ public class HangManTest extends Assert
 		WicketTester tester = new WicketTester(new HangmanApplication());
 		try
 		{
-			tester.startPage(Home.class, new PageParameters().set("word", "hangman", INamedParameters.Type.MANUAL));
+			tester.startPage(Home.class, new PageParameters().set("word", "hangman"));
 			tester.assertComponent("start", Link.class);
 			tester.assertContains("Wicket Examples - hangman");
 			tester.clickLink("start");

http://git-wip-us.apache.org/repos/asf/wicket/blob/cb4590a2/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/form/upload/UploadStatusResource.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/form/upload/UploadStatusResource.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/form/upload/UploadStatusResource.java
index 819d796..92d9a4b 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/form/upload/UploadStatusResource.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/form/upload/UploadStatusResource.java
@@ -24,7 +24,6 @@ import org.apache.wicket.model.Model;
 import org.apache.wicket.model.StringResourceModel;
 import org.apache.wicket.protocol.http.servlet.MultipartServletWebRequestImpl;
 import org.apache.wicket.protocol.http.servlet.UploadInfo;
-import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.apache.wicket.request.resource.AbstractResource;
 import org.apache.wicket.util.time.Duration;
@@ -95,7 +94,7 @@ class UploadStatusResource extends AbstractResource
 
 		UploadInfo info = MultipartServletWebRequestImpl.getUploadInfo(req, upload);
 
-		String status = null;
+		String status;
 		if ((info == null) || (info.getTotalBytes() < 1))
 		{
 			status = "100|";
@@ -118,6 +117,6 @@ class UploadStatusResource extends AbstractResource
 	 */
 	public static PageParameters newParameter(String upload)
 	{
-		return new PageParameters().add(UPLOAD_PARAMETER, upload, INamedParameters.Type.MANUAL);
+		return new PageParameters().add(UPLOAD_PARAMETER, upload);
 	}
 }

http://git-wip-us.apache.org/repos/asf/wicket/blob/cb4590a2/wicket-extensions/src/test/java/org/apache/wicket/extensions/markup/html/repeater/data/table/DataTableTest.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/test/java/org/apache/wicket/extensions/markup/html/repeater/data/table/DataTableTest.java b/wicket-extensions/src/test/java/org/apache/wicket/extensions/markup/html/repeater/data/table/DataTableTest.java
index c5b5d5a..d9711cc 100644
--- a/wicket-extensions/src/test/java/org/apache/wicket/extensions/markup/html/repeater/data/table/DataTableTest.java
+++ b/wicket-extensions/src/test/java/org/apache/wicket/extensions/markup/html/repeater/data/table/DataTableTest.java
@@ -29,7 +29,6 @@ import org.apache.wicket.markup.html.WebPage;
 import org.apache.wicket.markup.repeater.data.IDataProvider;
 import org.apache.wicket.model.IModel;
 import org.apache.wicket.model.Model;
-import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.apache.wicket.util.resource.IResourceStream;
 import org.apache.wicket.util.resource.StringResourceStream;
@@ -85,13 +84,13 @@ public class DataTableTest extends WicketTestCase
 	public void testWicket3603()
 	{
 		PageParameters parameters = new PageParameters();
-		parameters.add("empty", Boolean.TRUE, INamedParameters.Type.MANUAL);
+		parameters.add("empty", Boolean.TRUE);
 		tester.startPage(Wicket3603Page.class, parameters);
 // System.err.println(tester.getLastResponseAsString());
 		Assert.assertTrue(tester.getLastResponseAsString().contains("thead"));
 		Assert.assertTrue(tester.getLastResponseAsString().contains("tfoot"));
 
-		parameters.set("empty", Boolean.FALSE, INamedParameters.Type.MANUAL);
+		parameters.set("empty", Boolean.FALSE);
 		tester.startPage(Wicket3603Page.class);
 // System.err.println(tester.getLastResponseAsString());
 		Assert.assertFalse(tester.getLastResponseAsString().contains("thead"));

http://git-wip-us.apache.org/repos/asf/wicket/blob/cb4590a2/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/NamedParameterType.java
----------------------------------------------------------------------
diff --git a/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/NamedParameterType.java b/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/NamedParameterType.java
deleted file mode 100644
index 99bf702..0000000
--- a/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/NamedParameterType.java
+++ /dev/null
@@ -1,30 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.wicket.request.mapper.parameter;
-
-/**
- *
- */
-public enum NamedParameterType
-{
-	MANUAL,
-
-	QUERY_STRING,
-
-	PATH
-}


[8/8] git commit: Merge branch 'master' into 5539-named-parameters-type

Posted by mg...@apache.org.
Merge branch 'master' into 5539-named-parameters-type


Project: http://git-wip-us.apache.org/repos/asf/wicket/repo
Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/3b661b5c
Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/3b661b5c
Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/3b661b5c

Branch: refs/heads/master
Commit: 3b661b5cbd6f83191446973daca72fe02e413834
Parents: cb4590a d6897c9
Author: Martin Tzvetanov Grigorov <mg...@apache.org>
Authored: Tue Aug 12 10:46:41 2014 +0200
Committer: Martin Tzvetanov Grigorov <mg...@apache.org>
Committed: Tue Aug 12 10:46:41 2014 +0200

----------------------------------------------------------------------
 .../resources/META-INF/maven/archetype-metadata.xml     | 11 ++++++++---
 .../src/main/resources/__log4j.properties__             | 12 ++++++++++++
 .../src/main/resources/log4j.properties                 | 12 ------------
 .../org/apache/wicket/core/util/string/CssUtils.java    |  3 ++-
 .../org/apache/wicket/protocol/http/WebApplication.java | 10 +++++-----
 5 files changed, 27 insertions(+), 21 deletions(-)
----------------------------------------------------------------------



[3/8] git commit: WICKET-5539 Incorrect recreation of page in case of PageExpire

Posted by mg...@apache.org.
WICKET-5539 Incorrect recreation of page in case of PageExpire

Add javadoc and method to read all named parameters with a given type


Project: http://git-wip-us.apache.org/repos/asf/wicket/repo
Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/e8773fb1
Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/e8773fb1
Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/e8773fb1

Branch: refs/heads/master
Commit: e8773fb18da2d763d62a2857335b3c73d491d064
Parents: 5f0e63c
Author: Martin Tzvetanov Grigorov <mg...@apache.org>
Authored: Mon Aug 11 11:59:55 2014 +0200
Committer: Martin Tzvetanov Grigorov <mg...@apache.org>
Committed: Mon Aug 11 12:11:25 2014 +0200

----------------------------------------------------------------------
 .../mapper/parameter/INamedParameters.java      | 19 +++++++
 .../mapper/parameter/PageParameters.java        | 53 ++++++++++----------
 2 files changed, 46 insertions(+), 26 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/wicket/blob/e8773fb1/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/INamedParameters.java
----------------------------------------------------------------------
diff --git a/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/INamedParameters.java b/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/INamedParameters.java
index f09874d..288cd7c 100644
--- a/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/INamedParameters.java
+++ b/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/INamedParameters.java
@@ -31,12 +31,24 @@ import org.apache.wicket.util.string.StringValue;
  */
 public interface INamedParameters
 {
+	/**
+	 * A hint where the parameter is read from.
+	 */
 	enum Type
 	{
+		/**
+		 * The named parameter is set manually in the application code
+		 */
 		MANUAL,
 
+		/**
+		 * The named parameter is read/parsed from the query string
+		 */
 		QUERY_STRING,
 
+		/**
+		 * The named parameter is read/parsed from the url path
+		 */
 		PATH
 	}
 
@@ -145,6 +157,13 @@ public interface INamedParameters
 	List<NamedPair> getAllNamed();
 
 	/**
+	 * @param type
+	 *          The type to filter
+	 * @return All named parameters with the given type. If the type is {@code null} then returns all named parameters.
+	 */
+	List<NamedPair> getAllNamedByType(Type type);
+
+	/**
 	 * Returns the position of a named parameter.
 	 * 
 	 * @param name

http://git-wip-us.apache.org/repos/asf/wicket/blob/e8773fb1/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/PageParameters.java
----------------------------------------------------------------------
diff --git a/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/PageParameters.java b/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/PageParameters.java
index 0b6e7fb..357e91a 100644
--- a/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/PageParameters.java
+++ b/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/PageParameters.java
@@ -55,7 +55,7 @@ public class PageParameters implements IClusterable, IIndexedParameters, INamedP
 	private List<NamedPair> namedParameters;
 
 	/**
-	 * Construct.
+	 * Constructor.
 	 */
 	public PageParameters()
 	{
@@ -65,6 +65,7 @@ public class PageParameters implements IClusterable, IIndexedParameters, INamedP
 	 * Copy constructor.
 	 * 
 	 * @param copy
+	 *          The parameters to copy from
 	 */
 	public PageParameters(final PageParameters copy)
 	{
@@ -110,9 +111,6 @@ public class PageParameters implements IClusterable, IIndexedParameters, INamedP
 		return this;
 	}
 
-	/**
-	 * @see org.apache.wicket.request.mapper.parameter.IIndexedParameters#get(int)
-	 */
 	@Override
 	public StringValue get(final int index)
 	{
@@ -126,9 +124,6 @@ public class PageParameters implements IClusterable, IIndexedParameters, INamedP
 		return StringValue.valueOf((String)null);
 	}
 
-	/**
-	 * @see org.apache.wicket.request.mapper.parameter.IIndexedParameters#remove(int)
-	 */
 	@Override
 	public PageParameters remove(final int index)
 	{
@@ -142,9 +137,6 @@ public class PageParameters implements IClusterable, IIndexedParameters, INamedP
 		return this;
 	}
 
-	/**
-	 * @see org.apache.wicket.request.mapper.parameter.INamedParameters#getNamedKeys()
-	 */
 	@Override
 	public Set<String> getNamedKeys()
 	{
@@ -160,9 +152,6 @@ public class PageParameters implements IClusterable, IIndexedParameters, INamedP
 		return Collections.unmodifiableSet(set);
 	}
 
-	/**
-	 * @see org.apache.wicket.request.mapper.parameter.INamedParameters#get(java.lang.String)
-	 */
 	@Override
 	public StringValue get(final String name)
 	{
@@ -181,9 +170,6 @@ public class PageParameters implements IClusterable, IIndexedParameters, INamedP
 		return StringValue.valueOf((String)null);
 	}
 
-	/**
-	 * @see org.apache.wicket.request.mapper.parameter.INamedParameters#getValues(java.lang.String)
-	 */
 	@Override
 	public List<StringValue> getValues(final String name)
 	{
@@ -207,18 +193,35 @@ public class PageParameters implements IClusterable, IIndexedParameters, INamedP
 		}
 	}
 
-	/**
-	 * @see org.apache.wicket.request.mapper.parameter.INamedParameters#getAllNamed()
-	 */
 	@Override
 	public List<NamedPair> getAllNamed()
 	{
 		return namedParameters != null ? Collections.unmodifiableList(namedParameters) : Collections.<NamedPair>emptyList();
 	}
 
-	/**
-	 * @see org.apache.wicket.request.mapper.parameter.INamedParameters#getPosition(String)
-	 */
+
+	@Override
+	public List<NamedPair> getAllNamedByType(Type type)
+	{
+		List<NamedPair> allNamed = getAllNamed();
+		if (type == null || allNamed.isEmpty())
+		{
+			return allNamed;
+		}
+
+		List<NamedPair> parametersByType = new ArrayList<>();
+		Iterator<NamedPair> iterator = allNamed.iterator();
+		while (iterator.hasNext())
+		{
+			NamedPair pair = iterator.next();
+			if (type == pair.getType())
+			{
+				parametersByType.add(pair);
+			}
+		}
+		return Collections.unmodifiableList(parametersByType);
+	}
+
 	@Override
 	public int getPosition(final String name)
 	{
@@ -238,10 +241,6 @@ public class PageParameters implements IClusterable, IIndexedParameters, INamedP
 		return index;
 	}
 
-	/**
-	 * @see org.apache.wicket.request.mapper.parameter.INamedParameters#remove(java.lang.String,
-	 *      java.lang.String...)
-	 */
 	@Override
 	public PageParameters remove(final String name, final String... values)
 	{
@@ -441,7 +440,9 @@ public class PageParameters implements IClusterable, IIndexedParameters, INamedP
 	 * Compares two {@link PageParameters} objects.
 	 * 
 	 * @param p1
+	 *          The first parameters
 	 * @param p2
+	 *          The second parameters
 	 * @return <code>true</code> if the objects are equal, <code>false</code> otherwise.
 	 */
 	public static boolean equals(final PageParameters p1, final PageParameters p2)


[5/8] git commit: Merge branch 'master' into 5539-named-parameters-type

Posted by mg...@apache.org.
Merge branch 'master' into 5539-named-parameters-type


Project: http://git-wip-us.apache.org/repos/asf/wicket/repo
Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/2d30f0d9
Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/2d30f0d9
Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/2d30f0d9

Branch: refs/heads/master
Commit: 2d30f0d949d026c0158a31687ecefda730519ad5
Parents: 76433a7 bae0db0
Author: Martin Tzvetanov Grigorov <mg...@apache.org>
Authored: Mon Aug 11 15:22:41 2014 +0200
Committer: Martin Tzvetanov Grigorov <mg...@apache.org>
Committed: Mon Aug 11 15:22:41 2014 +0200

----------------------------------------------------------------------
 .../src/main/java/org/apache/wicket/ajax/markup/html/AjaxLink.java | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------



[2/8] git commit: WICKET-5539 Incorrect recreation of page in case of PageExpire

Posted by mg...@apache.org.
WICKET-5539 Incorrect recreation of page in case of PageExpire

Support named parameters type.
The type is a hint from where the parameter has been read from - the url path, the url query string, or manually set


Project: http://git-wip-us.apache.org/repos/asf/wicket/repo
Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/5f0e63c8
Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/5f0e63c8
Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/5f0e63c8

Branch: refs/heads/master
Commit: 5f0e63c8a91ea74c57ed6ba65a9f8a60d30eb130
Parents: f3f065c
Author: Martin Tzvetanov Grigorov <mg...@apache.org>
Authored: Mon Aug 11 11:37:00 2014 +0200
Committer: Martin Tzvetanov Grigorov <mg...@apache.org>
Committed: Mon Aug 11 12:11:04 2014 +0200

----------------------------------------------------------------------
 .../wicket/cdi/ConversationPropagator.java      |  5 +-
 .../wicket/cdi/ConversationPropagatorTest.java  |  7 +-
 .../wicket/cdi/ConversationPropagator.java      |  3 +-
 .../mapper/AbstractBookmarkableMapper.java      |  5 +-
 .../core/request/mapper/ResourceMapper.java     |  3 +-
 .../wicket/protocol/http/RequestUtils.java      |  7 +-
 ...tringWithVersionResourceCachingStrategy.java |  2 +-
 .../org/apache/wicket/RequestEncodingTest.java  |  5 +-
 .../apache/wicket/SharedResourceUrlTest.java    |  5 +-
 .../BasicResourceReferenceMapperTest.java       | 30 +++------
 .../request/mapper/BookmarkableMapperTest.java  | 25 +++----
 .../core/request/mapper/CryptoMapperTest.java   |  9 +--
 .../core/request/mapper/MountedMapperTest.java  | 71 ++++++++++----------
 .../core/request/mapper/PackageMapperTest.java  | 29 ++++----
 .../wicket/core/request/mapper/UrlInfoTest.java |  7 +-
 .../html/basic/SimpleResponsePageClass.java     |  3 +-
 .../wicket/markup/html/form/FormTest.java       |  5 +-
 .../markup/html/internal/EnclosureTest.java     | 11 +--
 .../link/BookmarkableHomePageLinksPage.java     |  3 +-
 .../html/link/BookmarkablePageLinkTest.java     |  5 +-
 .../markup/html/link/MountedPageLinkTest.java   |  9 +--
 .../PageExpirationRecoveryTest.java             |  5 +-
 .../redirect/abort/AbortExceptionTest.java      |  5 +-
 ...elessPageManipulatingPageParametersTest.java |  3 +-
 ...gWithVersionResourceCachingStrategyTest.java |  5 +-
 .../wicket/session/DefaultPageFactoryTest.java  |  3 +-
 .../stateless/StatelessComponentTest.java       |  9 +--
 .../wicket/stateless/StatelessFormTest.java     |  5 +-
 .../wicket/util/tester/FormTesterTest.java      |  3 +-
 .../util/tester/MockFormFileUploadPage.java     |  3 +-
 .../util/tester/MockPageParameterPage.java      |  3 +-
 .../wicket/util/tester/WicketTesterTest.java    |  7 +-
 .../devutils/debugbar/InspectorDebugPanel.java  |  3 +-
 .../wicket/examples/asemail/MailTemplate.java   |  3 +-
 .../compref/BookmarkablePageLinkPage.java       |  5 +-
 .../apache/wicket/examples/hangman/Guess.java   |  5 +-
 .../wicket/examples/library/BookDetails.java    |  3 +-
 .../apache/wicket/examples/linkomatic/Home.java |  3 +-
 .../apache/wicket/examples/niceurl/Page2.java   |  5 +-
 .../wicket/examples/niceurl/mounted/Page5.java  |  5 +-
 .../wicket/examples/source/SourcesPage.java     |  5 +-
 .../examples/stateless/StatelessPage3.java      |  5 +-
 .../tree/content/BookmarkableFolderContent.java |  5 +-
 .../wicket/examples/hangman/HangManTest.java    |  5 +-
 .../html/form/upload/UploadStatusResource.java  |  5 +-
 .../html/repeater/data/table/DataTableTest.java |  5 +-
 .../mapper/parameter/IIndexedParameters.java    | 14 ++--
 .../mapper/parameter/INamedParameters.java      | 35 ++++++++--
 .../mapper/parameter/NamedParameterType.java    | 30 +++++++++
 .../mapper/parameter/PageParameters.java        | 48 ++++---------
 .../mapper/parameter/PageParametersEncoder.java |  2 +-
 .../parameter/UrlPathPageParametersEncoder.java |  2 +-
 .../mapper/parameter/PageParametersTest.java    | 40 ++++++-----
 .../UrlPathPageParametersEncoderTest.java       |  8 +--
 54 files changed, 310 insertions(+), 231 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/wicket/blob/5f0e63c8/wicket-cdi-1.1/src/main/java/org/apache/wicket/cdi/ConversationPropagator.java
----------------------------------------------------------------------
diff --git a/wicket-cdi-1.1/src/main/java/org/apache/wicket/cdi/ConversationPropagator.java b/wicket-cdi-1.1/src/main/java/org/apache/wicket/cdi/ConversationPropagator.java
index 3e3cbbf..48487fe 100644
--- a/wicket-cdi-1.1/src/main/java/org/apache/wicket/cdi/ConversationPropagator.java
+++ b/wicket-cdi-1.1/src/main/java/org/apache/wicket/cdi/ConversationPropagator.java
@@ -33,6 +33,7 @@ import org.apache.wicket.request.cycle.AbstractRequestCycleListener;
 import org.apache.wicket.request.cycle.IRequestCycleListener;
 import org.apache.wicket.request.cycle.RequestCycle;
 import org.apache.wicket.request.handler.resource.ResourceReferenceRequestHandler;
+import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.apache.wicket.request.resource.PackageResourceReference;
 import org.apache.wicket.util.lang.Args;
@@ -74,7 +75,7 @@ public class ConversationPropagator extends AbstractRequestCycleListener
 	/**
 	 * Constructor
 	 * 
-	 * @param container
+	 * @param application
 	 * @param propagation
 	 */
 	public ConversationPropagator(Application application, IConversationPropagation propagation)
@@ -140,7 +141,7 @@ public class ConversationPropagator extends AbstractRequestCycleListener
 			PageParameters parameters = getPageParameters(handler);
 			if (parameters != null)
 			{
-				parameters.set(CID, conversation.getId());
+				parameters.set(CID, conversation.getId(), INamedParameters.Type.MANUAL);
 				markPageWithConversationId(handler, conversation.getId());
 			}
 		}

http://git-wip-us.apache.org/repos/asf/wicket/blob/5f0e63c8/wicket-cdi-1.1/src/test/java/org/apache/wicket/cdi/ConversationPropagatorTest.java
----------------------------------------------------------------------
diff --git a/wicket-cdi-1.1/src/test/java/org/apache/wicket/cdi/ConversationPropagatorTest.java b/wicket-cdi-1.1/src/test/java/org/apache/wicket/cdi/ConversationPropagatorTest.java
index eefebde..e7e8924 100644
--- a/wicket-cdi-1.1/src/test/java/org/apache/wicket/cdi/ConversationPropagatorTest.java
+++ b/wicket-cdi-1.1/src/test/java/org/apache/wicket/cdi/ConversationPropagatorTest.java
@@ -18,6 +18,7 @@ package org.apache.wicket.cdi;
 
 import org.apache.wicket.cdi.testapp.TestConversationPage;
 import org.apache.wicket.cdi.testapp.TestConversationalPage;
+import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.junit.Test;
 
@@ -52,7 +53,7 @@ public class ConversationPropagatorTest extends WicketCdiTestCase
 		configure(new CdiConfiguration());
 
 		tester.startPage(TestConversationalPage.class,
-				new PageParameters().add("pageType", "bookmarkable"));
+				new PageParameters().add("pageType", "bookmarkable", INamedParameters.Type.MANUAL));
 
 		int i;
 		for (i = 0; i < 3; i++)
@@ -94,7 +95,7 @@ public class ConversationPropagatorTest extends WicketCdiTestCase
 		configure(new CdiConfiguration().setPropagation(ConversationPropagation.ALL));
 
 		tester.startPage(TestConversationPage.class,
-				new PageParameters().add("pageType", "bookmarkable"));
+				new PageParameters().add("pageType", "bookmarkable", INamedParameters.Type.MANUAL));
 		int i;
 		for (i = 0; i < 3; i++)
 		{
@@ -115,7 +116,7 @@ public class ConversationPropagatorTest extends WicketCdiTestCase
 		configure(new CdiConfiguration());
 
 		tester.startPage(TestConversationPage.class,
-				new PageParameters().add("pageType", "bookmarkable"));
+				new PageParameters().add("pageType", "bookmarkable", INamedParameters.Type.MANUAL));
 		int i;
 		for (i = 0; i < 3; i++)
 		{

http://git-wip-us.apache.org/repos/asf/wicket/blob/5f0e63c8/wicket-cdi/src/main/java/org/apache/wicket/cdi/ConversationPropagator.java
----------------------------------------------------------------------
diff --git a/wicket-cdi/src/main/java/org/apache/wicket/cdi/ConversationPropagator.java b/wicket-cdi/src/main/java/org/apache/wicket/cdi/ConversationPropagator.java
index 568e117..430609f 100644
--- a/wicket-cdi/src/main/java/org/apache/wicket/cdi/ConversationPropagator.java
+++ b/wicket-cdi/src/main/java/org/apache/wicket/cdi/ConversationPropagator.java
@@ -37,6 +37,7 @@ import org.apache.wicket.request.cycle.AbstractRequestCycleListener;
 import org.apache.wicket.request.cycle.IRequestCycleListener;
 import org.apache.wicket.request.cycle.RequestCycle;
 import org.apache.wicket.request.handler.resource.ResourceReferenceRequestHandler;
+import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.apache.wicket.request.resource.PackageResourceReference;
 import org.apache.wicket.util.lang.Args;
@@ -281,7 +282,7 @@ public class ConversationPropagator extends AbstractRequestCycleListener
 			PageParameters parameters = getPageParameters(handler);
 			if (parameters != null)
 			{
-				parameters.set(CID, conversation.getId());
+				parameters.set(CID, conversation.getId(), INamedParameters.Type.MANUAL);
 			}
 		}
 	}

http://git-wip-us.apache.org/repos/asf/wicket/blob/5f0e63c8/wicket-core/src/main/java/org/apache/wicket/core/request/mapper/AbstractBookmarkableMapper.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/main/java/org/apache/wicket/core/request/mapper/AbstractBookmarkableMapper.java b/wicket-core/src/main/java/org/apache/wicket/core/request/mapper/AbstractBookmarkableMapper.java
index 659f7f2..658c98f 100644
--- a/wicket-core/src/main/java/org/apache/wicket/core/request/mapper/AbstractBookmarkableMapper.java
+++ b/wicket-core/src/main/java/org/apache/wicket/core/request/mapper/AbstractBookmarkableMapper.java
@@ -39,6 +39,7 @@ import org.apache.wicket.request.http.WebRequest;
 import org.apache.wicket.request.mapper.info.ComponentInfo;
 import org.apache.wicket.request.mapper.info.PageComponentInfo;
 import org.apache.wicket.request.mapper.info.PageInfo;
+import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.IPageParametersEncoder;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.apache.wicket.request.mapper.parameter.PageParametersEncoder;
@@ -629,12 +630,12 @@ public abstract class AbstractBookmarkableMapper extends AbstractComponentMapper
 				if (placeholder != null)
 				{
 					pageParameters.add(placeholder,
-							url.getSegments().get(curSegmentIndex - skippedParameters));
+							url.getSegments().get(curSegmentIndex - skippedParameters), INamedParameters.Type.PATH);
 				}
 				else if (optionalPlaceholder != null && optionalParameterMatch > 0)
 				{
 					pageParameters.add(optionalPlaceholder,
-							url.getSegments().get(curSegmentIndex - skippedParameters));
+							url.getSegments().get(curSegmentIndex - skippedParameters), INamedParameters.Type.PATH);
 					optionalParameterMatch--;
 				}
 			}

http://git-wip-us.apache.org/repos/asf/wicket/blob/5f0e63c8/wicket-core/src/main/java/org/apache/wicket/core/request/mapper/ResourceMapper.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/main/java/org/apache/wicket/core/request/mapper/ResourceMapper.java b/wicket-core/src/main/java/org/apache/wicket/core/request/mapper/ResourceMapper.java
index 718ede2..cc6f6d3 100644
--- a/wicket-core/src/main/java/org/apache/wicket/core/request/mapper/ResourceMapper.java
+++ b/wicket-core/src/main/java/org/apache/wicket/core/request/mapper/ResourceMapper.java
@@ -28,6 +28,7 @@ import org.apache.wicket.request.Url;
 import org.apache.wicket.request.handler.resource.ResourceReferenceRequestHandler;
 import org.apache.wicket.request.http.flow.AbortWithHttpErrorCodeException;
 import org.apache.wicket.request.mapper.AbstractMapper;
+import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.IPageParametersEncoder;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.apache.wicket.request.mapper.parameter.PageParametersEncoder;
@@ -148,7 +149,7 @@ public class ResourceMapper extends AbstractMapper implements IRequestMapper
 				{
 					parameters = new PageParameters();
 				}
-				parameters.add(placeholder, url.getSegments().get(index));
+				parameters.add(placeholder, url.getSegments().get(index), INamedParameters.Type.PATH);
 			}
 		}
 		return new ResourceReferenceRequestHandler(resourceReference, parameters);

http://git-wip-us.apache.org/repos/asf/wicket/blob/5f0e63c8/wicket-core/src/main/java/org/apache/wicket/protocol/http/RequestUtils.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/main/java/org/apache/wicket/protocol/http/RequestUtils.java b/wicket-core/src/main/java/org/apache/wicket/protocol/http/RequestUtils.java
index 9a04164..ab3c808 100644
--- a/wicket-core/src/main/java/org/apache/wicket/protocol/http/RequestUtils.java
+++ b/wicket-core/src/main/java/org/apache/wicket/protocol/http/RequestUtils.java
@@ -26,6 +26,7 @@ import javax.servlet.http.HttpServletRequest;
 
 import org.apache.wicket.Application;
 import org.apache.wicket.request.cycle.RequestCycle;
+import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.apache.wicket.util.encoding.UrlDecoder;
 import org.apache.wicket.util.string.Strings;
@@ -77,11 +78,11 @@ public final class RequestUtils
 			if (bits.length == 2)
 			{
 				params.add(UrlDecoder.QUERY_INSTANCE.decode(bits[0], currentCharset),
-					UrlDecoder.QUERY_INSTANCE.decode(bits[1], currentCharset));
+					UrlDecoder.QUERY_INSTANCE.decode(bits[1], currentCharset), INamedParameters.Type.QUERY_STRING);
 			}
 			else
 			{
-				params.add(UrlDecoder.QUERY_INSTANCE.decode(bits[0], currentCharset), "");
+				params.add(UrlDecoder.QUERY_INSTANCE.decode(bits[0], currentCharset), "", INamedParameters.Type.QUERY_STRING);
 			}
 		}
 	}
@@ -209,7 +210,7 @@ public final class RequestUtils
 	 * @return the request's charset or a default it request is {@code null} or has an unsupported
 	 *         character encoding
 	 * 
-	 * @see IRequestCycleSettings#getResponseRequestEncoding()
+	 * @see org.apache.wicket.settings.RequestCycleSettings#getResponseRequestEncoding()
 	 */
 	public static Charset getCharset(HttpServletRequest request)
 	{

http://git-wip-us.apache.org/repos/asf/wicket/blob/5f0e63c8/wicket-core/src/main/java/org/apache/wicket/request/resource/caching/QueryStringWithVersionResourceCachingStrategy.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/main/java/org/apache/wicket/request/resource/caching/QueryStringWithVersionResourceCachingStrategy.java b/wicket-core/src/main/java/org/apache/wicket/request/resource/caching/QueryStringWithVersionResourceCachingStrategy.java
index b3d6465..117db37 100644
--- a/wicket-core/src/main/java/org/apache/wicket/request/resource/caching/QueryStringWithVersionResourceCachingStrategy.java
+++ b/wicket-core/src/main/java/org/apache/wicket/request/resource/caching/QueryStringWithVersionResourceCachingStrategy.java
@@ -101,7 +101,7 @@ public class QueryStringWithVersionResourceCachingStrategy implements IResourceC
 
 		if (version != null)
 		{
-			url.getParameters().set(versionParameter, version);
+			url.getParameters().set(versionParameter, version, INamedParameters.Type.MANUAL);
 		}
 	}
 

http://git-wip-us.apache.org/repos/asf/wicket/blob/5f0e63c8/wicket-core/src/test/java/org/apache/wicket/RequestEncodingTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/RequestEncodingTest.java b/wicket-core/src/test/java/org/apache/wicket/RequestEncodingTest.java
index c0a36a6..c5d7a0d 100644
--- a/wicket-core/src/test/java/org/apache/wicket/RequestEncodingTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/RequestEncodingTest.java
@@ -16,6 +16,7 @@
  */
 package org.apache.wicket;
 
+import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.apache.wicket.util.tester.WicketTester;
 import org.junit.After;
@@ -37,7 +38,7 @@ public class RequestEncodingTest extends Assert
 	private WicketTester tester;
 
 	/**
-	 * @see org.apache.wicket.WicketTestCase#setUp()
+	 * @see WicketTestCase#commonBefore()
 	 */
 	@Before
 	public void setUp()
@@ -64,7 +65,7 @@ public class RequestEncodingTest extends Assert
 	public void defaultTest()
 	{
 		tester.startPage(RedirectA.class,
-			new PageParameters().set("file", "umlaut-\u00E4-\u00F6-\u00FC"));
+			new PageParameters().set("file", "umlaut-\u00E4-\u00F6-\u00FC", INamedParameters.Type.MANUAL));
 		tester.assertRenderedPage(RedirectB.class);
 
 		String url2 = ((RedirectB)tester.getLastRenderedPage()).getInterceptContinuationURL();

http://git-wip-us.apache.org/repos/asf/wicket/blob/5f0e63c8/wicket-core/src/test/java/org/apache/wicket/SharedResourceUrlTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/SharedResourceUrlTest.java b/wicket-core/src/test/java/org/apache/wicket/SharedResourceUrlTest.java
index 947e16b..6e16fe6 100644
--- a/wicket-core/src/test/java/org/apache/wicket/SharedResourceUrlTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/SharedResourceUrlTest.java
@@ -16,6 +16,7 @@
  */
 package org.apache.wicket;
 
+import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.apache.wicket.request.resource.PackageResourceReference;
 import org.apache.wicket.request.resource.ResourceReference;
@@ -50,13 +51,13 @@ public class SharedResourceUrlTest extends WicketTestCase
 	{
 		ResourceReference rr = new SharedResourceReference("test");
 		CharSequence url = tester.getRequestCycle()
-			.mapUrlFor(rr, new PageParameters().set("param", "value"))
+			.mapUrlFor(rr, new PageParameters().set("param", "value", INamedParameters.Type.MANUAL))
 			.toString();
 		assertEquals("wicket/resource/org.apache.wicket.Application/test?param=value", url);
 
 		rr = new PackageResourceReference(SharedResourceUrlTest.class, "test");
 		url = tester.getRequestCycle()
-			.mapUrlFor(rr, new PageParameters().set("param", "value"))
+			.mapUrlFor(rr, new PageParameters().set("param", "value", INamedParameters.Type.MANUAL))
 			.toString();
 		assertEquals("wicket/resource/org.apache.wicket.SharedResourceUrlTest/test?param=value",
 			url);

http://git-wip-us.apache.org/repos/asf/wicket/blob/5f0e63c8/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/BasicResourceReferenceMapperTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/BasicResourceReferenceMapperTest.java b/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/BasicResourceReferenceMapperTest.java
index d7cce88..8f0e752 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/BasicResourceReferenceMapperTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/BasicResourceReferenceMapperTest.java
@@ -49,7 +49,7 @@ import org.junit.Test;
  */
 public class BasicResourceReferenceMapperTest extends AbstractResourceReferenceMapperTest
 {
-	private static final IProvider<IResourceCachingStrategy> NO_CACHING = new ValueProvider<IResourceCachingStrategy>(
+	private static final IProvider<IResourceCachingStrategy> NO_CACHING = new ValueProvider<>(
 		NoOpResourceCachingStrategy.INSTANCE);
 
 	private final BasicResourceReferenceMapper encoder = new BasicResourceReferenceMapper(
@@ -345,8 +345,8 @@ public class BasicResourceReferenceMapperTest extends AbstractResourceReferenceM
 	{
 		PageParameters parameters = new PageParameters();
 		parameters.set(0, "X");
-		parameters.add("p1", "v1");
-		parameters.add("p2", "v2");
+		parameters.add("p1", "v1", INamedParameters.Type.QUERY_STRING);
+		parameters.add("p2", "v2", INamedParameters.Type.QUERY_STRING);
 		ResourceReferenceRequestHandler handler = new ResourceReferenceRequestHandler(reference1,
 			parameters);
 
@@ -374,8 +374,8 @@ public class BasicResourceReferenceMapperTest extends AbstractResourceReferenceM
 	{
 		PageParameters parameters = new PageParameters();
 		parameters.set(0, "X");
-		parameters.add("p1", "v1");
-		parameters.add("p2", "v2");
+		parameters.add("p1", "v1", INamedParameters.Type.QUERY_STRING);
+		parameters.add("p2", "v2", INamedParameters.Type.QUERY_STRING);
 		ResourceReferenceRequestHandler handler = new ResourceReferenceRequestHandler(reference2,
 			parameters);
 
@@ -404,8 +404,8 @@ public class BasicResourceReferenceMapperTest extends AbstractResourceReferenceM
 	{
 		PageParameters parameters = new PageParameters();
 		parameters.set(0, "X");
-		parameters.add("p1", "v1");
-		parameters.add("p2", "v2");
+		parameters.add("p1", "v1", INamedParameters.Type.QUERY_STRING);
+		parameters.add("p2", "v2", INamedParameters.Type.QUERY_STRING);
 		ResourceReferenceRequestHandler handler = new ResourceReferenceRequestHandler(reference3,
 			parameters);
 
@@ -434,8 +434,8 @@ public class BasicResourceReferenceMapperTest extends AbstractResourceReferenceM
 	{
 		PageParameters parameters = new PageParameters();
 		parameters.set(0, "X");
-		parameters.add("p1", "v1");
-		parameters.add("p2", "v2");
+		parameters.add("p1", "v1", INamedParameters.Type.QUERY_STRING);
+		parameters.add("p2", "v2", INamedParameters.Type.QUERY_STRING);
 		ResourceReferenceRequestHandler handler = new ResourceReferenceRequestHandler(reference4,
 			parameters);
 
@@ -491,18 +491,6 @@ public class BasicResourceReferenceMapperTest extends AbstractResourceReferenceM
 			}
 		};
 
-		final ResourceReference reference = new ResourceReference(getClass(), "versioned",
-			Locale.ENGLISH, "style", null)
-		{
-			private static final long serialVersionUID = 1L;
-
-			@Override
-			public IResource getResource()
-			{
-				return resource;
-			}
-		};
-
 		IResourceCachingStrategy strategy = new FilenameWithVersionResourceCachingStrategy(
 			"-version-", new AlphaDigitResourceVersion("foobar"));
 

http://git-wip-us.apache.org/repos/asf/wicket/blob/5f0e63c8/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/BookmarkableMapperTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/BookmarkableMapperTest.java b/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/BookmarkableMapperTest.java
index 910c821..b35ec08 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/BookmarkableMapperTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/BookmarkableMapperTest.java
@@ -34,6 +34,7 @@ import org.apache.wicket.request.Request;
 import org.apache.wicket.request.Url;
 import org.apache.wicket.request.component.IRequestableComponent;
 import org.apache.wicket.request.component.IRequestablePage;
+import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.junit.Test;
 
@@ -476,8 +477,8 @@ public class BookmarkableMapperTest extends AbstractMapperTest
 		PageParameters parameters = new PageParameters();
 		parameters.set(0, "i1");
 		parameters.set(1, "i2");
-		parameters.set("a", "b");
-		parameters.set("b", "c");
+		parameters.set("a", "b", INamedParameters.Type.QUERY_STRING);
+		parameters.set("b", "c", INamedParameters.Type.QUERY_STRING);
 		PageProvider provider = new PageProvider(MockPage.class, parameters);
 		provider.setPageSource(context);
 		IRequestHandler handler = new BookmarkablePageRequestHandler(provider);
@@ -494,8 +495,8 @@ public class BookmarkableMapperTest extends AbstractMapperTest
 		PageParameters parameters = new PageParameters();
 		parameters.set(0, "i1");
 		parameters.set(1, "i2");
-		parameters.set("a", "b");
-		parameters.set("b", "c");
+		parameters.set("a", "b", INamedParameters.Type.QUERY_STRING);
+		parameters.set("b", "c", INamedParameters.Type.QUERY_STRING);
 
 		PageProvider provider = new PageProvider(MockPage.class, parameters);
 		provider.setPageSource(context);
@@ -514,8 +515,8 @@ public class BookmarkableMapperTest extends AbstractMapperTest
 		MockPage page = new MockPage(15);
 		page.getPageParameters().set(0, "i1");
 		page.getPageParameters().set(1, "i2");
-		page.getPageParameters().set("a", "b");
-		page.getPageParameters().set("b", "c");
+		page.getPageParameters().set("a", "b", INamedParameters.Type.QUERY_STRING);
+		page.getPageParameters().set("b", "c", INamedParameters.Type.QUERY_STRING);
 		page.setCreatedBookmarkable(true);
 
 		IPageProvider provider = new PageProvider(page);
@@ -534,8 +535,8 @@ public class BookmarkableMapperTest extends AbstractMapperTest
 		MockPage page = new MockPage(15);
 		page.getPageParameters().set(0, "i1");
 		page.getPageParameters().set(1, "i2");
-		page.getPageParameters().set("a", "b");
-		page.getPageParameters().set("b", "c");
+		page.getPageParameters().set("a", "b", INamedParameters.Type.QUERY_STRING);
+		page.getPageParameters().set("b", "c", INamedParameters.Type.QUERY_STRING);
 
 		page.setCreatedBookmarkable(false);
 
@@ -559,8 +560,8 @@ public class BookmarkableMapperTest extends AbstractMapperTest
 		MockPage page = new MockPage(15);
 		page.getPageParameters().set(0, "i1");
 		page.getPageParameters().set(1, "i2");
-		page.getPageParameters().set("a", "b");
-		page.getPageParameters().set("b", "c");
+		page.getPageParameters().set("a", "b", INamedParameters.Type.QUERY_STRING);
+		page.getPageParameters().set("b", "c", INamedParameters.Type.QUERY_STRING);
 
 		// shouldn't make any difference for
 		// BookmarkableListenerInterfaceRequestHandler,
@@ -588,8 +589,8 @@ public class BookmarkableMapperTest extends AbstractMapperTest
 		MockPage page = new MockPage(15);
 		page.getPageParameters().set(0, "i1");
 		page.getPageParameters().set(1, "i2");
-		page.getPageParameters().set("a", "b");
-		page.getPageParameters().set("b", "c");
+		page.getPageParameters().set("a", "b", INamedParameters.Type.QUERY_STRING);
+		page.getPageParameters().set("b", "c", INamedParameters.Type.QUERY_STRING);
 
 		// shouldn't make any difference for
 		// BookmarkableListenerInterfaceRequestHandler,

http://git-wip-us.apache.org/repos/asf/wicket/blob/5f0e63c8/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/CryptoMapperTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/CryptoMapperTest.java b/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/CryptoMapperTest.java
index d1e33df..0eb0653 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/CryptoMapperTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/CryptoMapperTest.java
@@ -32,6 +32,7 @@ import org.apache.wicket.request.Url;
 import org.apache.wicket.request.Url.StringMode;
 import org.apache.wicket.request.component.IRequestableComponent;
 import org.apache.wicket.request.handler.resource.ResourceReferenceRequestHandler;
+import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.apache.wicket.request.resource.PackageResourceReference;
 import org.apache.wicket.request.resource.UrlResourceReference;
@@ -178,8 +179,8 @@ public class CryptoMapperTest extends AbstractMapperTest
 		String expectedEncrypted = "ywKWg-Qpk7YQBiYCmj9MaAJSIV1gtssNinjiALijtet62VMQc2-sMK_RchttkidUpYM_cplXKeZSfGxBkvWzH_E_zWv4Ii7MNSm5nXKno7o/ywK6c/MK_c0/nji3c/Qpk1b/XKnba/c2-cd";
 
 		PageParameters expectedParameters = new PageParameters();
-		expectedParameters.add("namedKey1", "namedValue1");
-		expectedParameters.add("namedKey2", "namedValue2");
+		expectedParameters.add("namedKey1", "namedValue1", INamedParameters.Type.MANUAL);
+		expectedParameters.add("namedKey2", "namedValue2", INamedParameters.Type.MANUAL);
 		expectedParameters.set(0, "indexedValue1");
 		expectedParameters.set(1, "indexedValue2");
 		RenderPageRequestHandler renderPageRequestHandler = new RenderPageRequestHandler(
@@ -209,7 +210,7 @@ public class CryptoMapperTest extends AbstractMapperTest
 	{
 		String expectedEncrypted = "?namedKey1=namedValue1";
 		PageParameters expectedParameters = new PageParameters();
-		expectedParameters.add("namedKey1", "namedValue1");
+		expectedParameters.add("namedKey1", "namedValue1", INamedParameters.Type.MANUAL);
 
 		RenderPageRequestHandler renderPageRequestHandler = new RenderPageRequestHandler(
 			new PageProvider(tester.getApplication().getHomePage(), expectedParameters));
@@ -365,4 +366,4 @@ public class CryptoMapperTest extends AbstractMapperTest
 		assertEquals("foo", ((RequestSettingRequestHandler)requestHandler).getRequest().getUrl()
 			.getQueryParameterValue("q").toString());
 	}
-}
\ No newline at end of file
+}

http://git-wip-us.apache.org/repos/asf/wicket/blob/5f0e63c8/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/MountedMapperTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/MountedMapperTest.java b/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/MountedMapperTest.java
index 0024874..6d65a7b 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/MountedMapperTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/MountedMapperTest.java
@@ -35,6 +35,7 @@ import org.apache.wicket.request.Url;
 import org.apache.wicket.request.component.IRequestableComponent;
 import org.apache.wicket.request.component.IRequestablePage;
 import org.apache.wicket.request.http.WebRequest;
+import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.junit.Test;
 
@@ -370,8 +371,8 @@ public class MountedMapperTest extends AbstractMapperTest
 		PageParameters parameters = new PageParameters();
 		parameters.set(0, "i1");
 		parameters.set(1, "i2");
-		parameters.set("a", "b");
-		parameters.set("b", "c");
+		parameters.set("a", "b", INamedParameters.Type.QUERY_STRING);
+		parameters.set("b", "c", INamedParameters.Type.QUERY_STRING);
 		PageProvider provider = new PageProvider(MockPage.class, parameters);
 		provider.setPageSource(context);
 		IRequestHandler handler = new BookmarkablePageRequestHandler(provider);
@@ -388,8 +389,8 @@ public class MountedMapperTest extends AbstractMapperTest
 		PageParameters parameters = new PageParameters();
 		parameters.set(0, "i1");
 		parameters.set(1, "i2");
-		parameters.set("a", "b");
-		parameters.set("b", "c");
+		parameters.set("a", "b", INamedParameters.Type.QUERY_STRING);
+		parameters.set("b", "c", INamedParameters.Type.QUERY_STRING);
 
 		PageProvider provider = new PageProvider(MockPage.class, parameters);
 		provider.setPageSource(context);
@@ -408,8 +409,8 @@ public class MountedMapperTest extends AbstractMapperTest
 		MockPage page = new MockPage(15);
 		page.getPageParameters().set(0, "i1");
 		page.getPageParameters().set(1, "i2");
-		page.getPageParameters().set("a", "b");
-		page.getPageParameters().set("b", "c");
+		page.getPageParameters().set("a", "b", INamedParameters.Type.QUERY_STRING);
+		page.getPageParameters().set("b", "c", INamedParameters.Type.QUERY_STRING);
 		page.setCreatedBookmarkable(true);
 
 		IPageProvider provider = new PageProvider(page);
@@ -428,8 +429,8 @@ public class MountedMapperTest extends AbstractMapperTest
 		MockPage page = new MockPage(15);
 		page.getPageParameters().set(0, "i1");
 		page.getPageParameters().set(1, "i2");
-		page.getPageParameters().set("a", "b");
-		page.getPageParameters().set("b", "c");
+		page.getPageParameters().set("a", "b", INamedParameters.Type.QUERY_STRING);
+		page.getPageParameters().set("b", "c", INamedParameters.Type.QUERY_STRING);
 
 		page.setCreatedBookmarkable(false);
 
@@ -454,8 +455,8 @@ public class MountedMapperTest extends AbstractMapperTest
 		MockPage page = new MockPage(15);
 		page.getPageParameters().set(0, "i1");
 		page.getPageParameters().set(1, "i2");
-		page.getPageParameters().set("a", "b");
-		page.getPageParameters().set("b", "c");
+		page.getPageParameters().set("a", "b", INamedParameters.Type.QUERY_STRING);
+		page.getPageParameters().set("b", "c", INamedParameters.Type.QUERY_STRING);
 		page.setRenderCount(4);
 
 		// shouldn't make any difference for
@@ -486,17 +487,17 @@ public class MountedMapperTest extends AbstractMapperTest
 		MockPage page = new MockPage(15);
 		page.getPageParameters().set(0, "i1");
 		page.getPageParameters().set(1, "i2");
-		page.getPageParameters().set("a", "b");
-		page.getPageParameters().set("b", "c");
+		page.getPageParameters().set("a", "b", INamedParameters.Type.QUERY_STRING);
+		page.getPageParameters().set("b", "c", INamedParameters.Type.QUERY_STRING);
 
 		// WICKET-4038
-		page.getPageParameters().add(WebRequest.PARAM_AJAX, "true");
-		page.getPageParameters().add(WebRequest.PARAM_AJAX_BASE_URL, "some/base/url");
+		page.getPageParameters().add(WebRequest.PARAM_AJAX, "true", INamedParameters.Type.QUERY_STRING);
+		page.getPageParameters().add(WebRequest.PARAM_AJAX_BASE_URL, "some/base/url", INamedParameters.Type.QUERY_STRING);
 
 		page.setRenderCount(4);
 
 		// shouldn't make any difference for ListenerInterfaceRequestHandler,
-		// as this explicitely says the url must be bookmarkable
+		// as this explicitly says the url must be bookmarkable
 		page.setCreatedBookmarkable(false);
 
 		IRequestableComponent c = page.get("foo:bar");
@@ -519,8 +520,8 @@ public class MountedMapperTest extends AbstractMapperTest
 		MockPage page = new MockPage(15);
 		page.getPageParameters().set(0, "i1");
 		page.getPageParameters().set(1, "i2");
-		page.getPageParameters().set("a", "b");
-		page.getPageParameters().set("b", "c");
+		page.getPageParameters().set("a", "b", INamedParameters.Type.QUERY_STRING);
+		page.getPageParameters().set("b", "c", INamedParameters.Type.QUERY_STRING);
 		page.setRenderCount(5);
 
 		// shouldn't make any difference for
@@ -551,8 +552,8 @@ public class MountedMapperTest extends AbstractMapperTest
 		MockPage page = new MockPage(15);
 		page.getPageParameters().set(0, "i1");
 		page.getPageParameters().set(1, "i2");
-		page.getPageParameters().set("a", "b");
-		page.getPageParameters().set("b", "c");
+		page.getPageParameters().set("a", "b", INamedParameters.Type.QUERY_STRING);
+		page.getPageParameters().set("b", "c", INamedParameters.Type.QUERY_STRING);
 		page.setRenderCount(5);
 
 		// shouldn't make any difference for ListenerInterfaceRequestHandler,
@@ -676,10 +677,10 @@ public class MountedMapperTest extends AbstractMapperTest
 		PageParameters parameters = new PageParameters();
 		parameters.set(0, "i1");
 		parameters.set(1, "i2");
-		parameters.set("a", "b");
-		parameters.set("b", "c");
-		parameters.set("param1", "p1");
-		parameters.set("param2", "p2");
+		parameters.set("a", "b", INamedParameters.Type.QUERY_STRING);
+		parameters.set("b", "c", INamedParameters.Type.QUERY_STRING);
+		parameters.set("param1", "p1", INamedParameters.Type.PATH);
+		parameters.set("param2", "p2", INamedParameters.Type.PATH);
 
 
 		PageProvider provider = new PageProvider(MockPage.class, parameters);
@@ -699,10 +700,10 @@ public class MountedMapperTest extends AbstractMapperTest
 		PageParameters parameters = new PageParameters();
 		parameters.set(0, "i1");
 		parameters.set(1, "i2");
-		parameters.set("a", "b");
-		parameters.set("b", "c");
-		parameters.set("param1", "p1");
-		parameters.set("param2", "p2");
+		parameters.set("a", "b", INamedParameters.Type.QUERY_STRING);
+		parameters.set("b", "c", INamedParameters.Type.QUERY_STRING);
+		parameters.set("param1", "p1", INamedParameters.Type.PATH);
+		parameters.set("param2", "p2", INamedParameters.Type.PATH);
 
 		PageProvider provider = new PageProvider(MockPage.class, parameters)
 		{
@@ -836,10 +837,10 @@ public class MountedMapperTest extends AbstractMapperTest
 		PageParameters parameters = new PageParameters();
 		parameters.set(0, "i1");
 		parameters.set(1, "i2");
-		parameters.set("a", "b");
-		parameters.set("b", "c");
-		parameters.set("param1", "p1");
-		parameters.set("param2", "p2");
+		parameters.set("a", "b", INamedParameters.Type.QUERY_STRING);
+		parameters.set("b", "c", INamedParameters.Type.QUERY_STRING);
+		parameters.set("param1", "p1", INamedParameters.Type.PATH);
+		parameters.set("param2", "p2", INamedParameters.Type.PATH);
 
 
 		PageProvider provider = new PageProvider(MockPage.class, parameters);
@@ -856,10 +857,10 @@ public class MountedMapperTest extends AbstractMapperTest
 		PageParameters parameters = new PageParameters();
 		parameters.set(0, "i1");
 		parameters.set(1, "i2");
-		parameters.set("a", "b");
-		parameters.set("b", "c");
-		parameters.set("param2", "p2");
-		parameters.set("param3", "p3");
+		parameters.set("a", "b", INamedParameters.Type.QUERY_STRING);
+		parameters.set("b", "c", INamedParameters.Type.QUERY_STRING);
+		parameters.set("param2", "p2", INamedParameters.Type.PATH);
+		parameters.set("param3", "p3", INamedParameters.Type.PATH);
 
 
 		PageProvider provider = new PageProvider(MockPage.class, parameters);

http://git-wip-us.apache.org/repos/asf/wicket/blob/5f0e63c8/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/PackageMapperTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/PackageMapperTest.java b/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/PackageMapperTest.java
index 9285fa0..413c70d 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/PackageMapperTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/PackageMapperTest.java
@@ -34,6 +34,7 @@ import org.apache.wicket.request.IRequestHandler;
 import org.apache.wicket.request.Url;
 import org.apache.wicket.request.component.IRequestableComponent;
 import org.apache.wicket.request.component.IRequestablePage;
+import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.apache.wicket.util.lang.PackageName;
 import org.junit.Test;
@@ -392,8 +393,8 @@ public class PackageMapperTest extends AbstractMapperTest
 		PageParameters parameters = new PageParameters();
 		parameters.set(0, "i1");
 		parameters.set(1, "i2");
-		parameters.set("a", "b");
-		parameters.set("b", "c");
+		parameters.set("a", "b", INamedParameters.Type.QUERY_STRING);
+		parameters.set("b", "c", INamedParameters.Type.QUERY_STRING);
 		PageProvider provider = new PageProvider(MockPage.class, parameters);
 		provider.setPageSource(context);
 		IRequestHandler handler = new BookmarkablePageRequestHandler(provider);
@@ -410,8 +411,8 @@ public class PackageMapperTest extends AbstractMapperTest
 		PageParameters parameters = new PageParameters();
 		parameters.set(0, "i1");
 		parameters.set(1, "i2");
-		parameters.set("a", "b");
-		parameters.set("b", "c");
+		parameters.set("a", "b", INamedParameters.Type.QUERY_STRING);
+		parameters.set("b", "c", INamedParameters.Type.QUERY_STRING);
 
 		PageProvider provider = new PageProvider(MockPage.class, parameters);
 		provider.setPageSource(context);
@@ -430,8 +431,8 @@ public class PackageMapperTest extends AbstractMapperTest
 		MockPage page = new MockPage(15);
 		page.getPageParameters().set(0, "i1");
 		page.getPageParameters().set(1, "i2");
-		page.getPageParameters().set("a", "b");
-		page.getPageParameters().set("b", "c");
+		page.getPageParameters().set("a", "b", INamedParameters.Type.QUERY_STRING);
+		page.getPageParameters().set("b", "c", INamedParameters.Type.QUERY_STRING);
 		page.setCreatedBookmarkable(true);
 
 		IPageProvider provider = new PageProvider(page);
@@ -450,8 +451,8 @@ public class PackageMapperTest extends AbstractMapperTest
 		MockPage page = new MockPage(15);
 		page.getPageParameters().set(0, "i1");
 		page.getPageParameters().set(1, "i2");
-		page.getPageParameters().set("a", "b");
-		page.getPageParameters().set("b", "c");
+		page.getPageParameters().set("a", "b", INamedParameters.Type.QUERY_STRING);
+		page.getPageParameters().set("b", "c", INamedParameters.Type.QUERY_STRING);
 
 		page.setCreatedBookmarkable(false);
 
@@ -471,8 +472,8 @@ public class PackageMapperTest extends AbstractMapperTest
 		MockPage page = new MockPage(15);
 		page.getPageParameters().set(0, "i1");
 		page.getPageParameters().set(1, "i2");
-		page.getPageParameters().set("a", "b");
-		page.getPageParameters().set("b", "c");
+		page.getPageParameters().set("a", "b", INamedParameters.Type.QUERY_STRING);
+		page.getPageParameters().set("b", "c", INamedParameters.Type.QUERY_STRING);
 
 		// shouldn't make any difference for
 		// BookmarkableListenerInterfaceRequestHandler,
@@ -499,8 +500,8 @@ public class PackageMapperTest extends AbstractMapperTest
 		MockPage page = new MockPage(15);
 		page.getPageParameters().set(0, "i1");
 		page.getPageParameters().set(1, "i2");
-		page.getPageParameters().set("a", "b");
-		page.getPageParameters().set("b", "c");
+		page.getPageParameters().set("a", "b", INamedParameters.Type.QUERY_STRING);
+		page.getPageParameters().set("b", "c", INamedParameters.Type.QUERY_STRING);
 
 		// shouldn't make any difference for
 		// BookmarkableListenerInterfaceRequestHandler,
@@ -550,8 +551,8 @@ public class PackageMapperTest extends AbstractMapperTest
 		page.setPageStateless(true);
 
 		IPageProvider provider = new PageProvider(page);
-		page.getPageParameters().set("foo", "fooValue");
-		page.getPageParameters().set("bar", "barValue");
+		page.getPageParameters().set("foo", "fooValue", INamedParameters.Type.PATH);
+		page.getPageParameters().set("bar", "barValue", INamedParameters.Type.PATH);
 		IRequestHandler handler = new RenderPageRequestHandler(provider);
 
 		Url url = namedParametersEncoder.mapHandler(handler);

http://git-wip-us.apache.org/repos/asf/wicket/blob/5f0e63c8/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/UrlInfoTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/UrlInfoTest.java b/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/UrlInfoTest.java
index c3c4666..04cfcee 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/UrlInfoTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/UrlInfoTest.java
@@ -19,6 +19,7 @@ package org.apache.wicket.core.request.mapper;
 import org.apache.wicket.MockPage;
 import org.apache.wicket.request.http.WebRequest;
 import org.apache.wicket.core.request.mapper.AbstractBookmarkableMapper.UrlInfo;
+import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.junit.Assert;
 import org.junit.Test;
@@ -36,9 +37,9 @@ public class UrlInfoTest extends Assert
 	public void wicket4038()
 	{
 		PageParameters parameters = new PageParameters();
-		parameters.add(WebRequest.PARAM_AJAX, "true");
-		parameters.add(WebRequest.PARAM_AJAX_BASE_URL, "base/url");
-		parameters.add(WebRequest.PARAM_AJAX_REQUEST_ANTI_CACHE, "12345.6879");
+		parameters.add(WebRequest.PARAM_AJAX, "true", INamedParameters.Type.MANUAL);
+		parameters.add(WebRequest.PARAM_AJAX_BASE_URL, "base/url", INamedParameters.Type.MANUAL);
+		parameters.add(WebRequest.PARAM_AJAX_REQUEST_ANTI_CACHE, "12345.6879", INamedParameters.Type.MANUAL);
 
 		AbstractBookmarkableMapper.UrlInfo info = new UrlInfo(null, MockPage.class, parameters);
 		assertNull(info.getPageParameters());

http://git-wip-us.apache.org/repos/asf/wicket/blob/5f0e63c8/wicket-core/src/test/java/org/apache/wicket/markup/html/basic/SimpleResponsePageClass.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/markup/html/basic/SimpleResponsePageClass.java b/wicket-core/src/test/java/org/apache/wicket/markup/html/basic/SimpleResponsePageClass.java
index 84d3c13..7b26684 100644
--- a/wicket-core/src/test/java/org/apache/wicket/markup/html/basic/SimpleResponsePageClass.java
+++ b/wicket-core/src/test/java/org/apache/wicket/markup/html/basic/SimpleResponsePageClass.java
@@ -18,6 +18,7 @@ package org.apache.wicket.markup.html.basic;
 
 import org.apache.wicket.markup.html.WebPage;
 import org.apache.wicket.markup.html.form.Form;
+import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 
 /**
@@ -41,7 +42,7 @@ public class SimpleResponsePageClass extends WebPage
 			protected void onSubmit()
 			{
 				// use Page "class"
-				setResponsePage(SimplePage.class, new PageParameters().set("test", "test"));
+				setResponsePage(SimplePage.class, new PageParameters().set("test", "test", INamedParameters.Type.MANUAL));
 			}
 		};
 		add(form);

http://git-wip-us.apache.org/repos/asf/wicket/blob/5f0e63c8/wicket-core/src/test/java/org/apache/wicket/markup/html/form/FormTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/markup/html/form/FormTest.java b/wicket-core/src/test/java/org/apache/wicket/markup/html/form/FormTest.java
index e63458d..35b4c8a 100644
--- a/wicket-core/src/test/java/org/apache/wicket/markup/html/form/FormTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/markup/html/form/FormTest.java
@@ -21,6 +21,7 @@ import org.apache.wicket.MockPageParametersAware;
 import org.apache.wicket.WicketTestCase;
 import org.apache.wicket.markup.IMarkupResourceStreamProvider;
 import org.apache.wicket.markup.html.WebPage;
+import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.apache.wicket.util.resource.IResourceStream;
 import org.apache.wicket.util.resource.StringResourceStream;
@@ -173,8 +174,8 @@ public class FormTest extends WicketTestCase
 	public void pageWithParameters() throws Exception
 	{
 		PageParameters parameters = new PageParameters();
-		parameters.add("first", "foo");
-		parameters.add("second", "bar");
+		parameters.add("first", "foo", INamedParameters.Type.MANUAL);
+		parameters.add("second", "bar", INamedParameters.Type.MANUAL);
 		executeTest(FormMethodTestPage.class, parameters, "pageWithParameters_expected.html");
 	}
 }

http://git-wip-us.apache.org/repos/asf/wicket/blob/5f0e63c8/wicket-core/src/test/java/org/apache/wicket/markup/html/internal/EnclosureTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/markup/html/internal/EnclosureTest.java b/wicket-core/src/test/java/org/apache/wicket/markup/html/internal/EnclosureTest.java
index 743d2c0..289ad5c 100644
--- a/wicket-core/src/test/java/org/apache/wicket/markup/html/internal/EnclosureTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/markup/html/internal/EnclosureTest.java
@@ -30,6 +30,7 @@ import org.apache.wicket.markup.html.basic.Label;
 import org.apache.wicket.markup.html.form.CheckBox;
 import org.apache.wicket.markup.html.link.Link;
 import org.apache.wicket.mock.MockApplication;
+import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.apache.wicket.util.resource.IResourceStream;
 import org.apache.wicket.util.resource.StringResourceStream;
@@ -78,7 +79,7 @@ public class EnclosureTest extends WicketTestCase
 	@Test
 	public void testRenderHomePage4() throws Exception
 	{
-		executeTest(EnclosurePage_4.class, new PageParameters().set("visible", false),
+		executeTest(EnclosurePage_4.class, new PageParameters().set("visible", false, INamedParameters.Type.MANUAL),
 			"EnclosurePageExpectedResult_4.html");
 	}
 
@@ -88,7 +89,7 @@ public class EnclosureTest extends WicketTestCase
 	@Test
 	public void testRenderHomePage4_1() throws Exception
 	{
-		executeTest(EnclosurePage_4.class, new PageParameters().set("visible", true),
+		executeTest(EnclosurePage_4.class, new PageParameters().set("visible", true, INamedParameters.Type.MANUAL),
 			"EnclosurePageExpectedResult_4-1.html");
 	}
 
@@ -98,7 +99,7 @@ public class EnclosureTest extends WicketTestCase
 	@Test
 	public void testRenderHomePage5() throws Exception
 	{
-		executeTest(EnclosurePage_5.class, new PageParameters().set("visible", false),
+		executeTest(EnclosurePage_5.class, new PageParameters().set("visible", false, INamedParameters.Type.MANUAL),
 			"EnclosurePageExpectedResult_5.html");
 	}
 
@@ -108,7 +109,7 @@ public class EnclosureTest extends WicketTestCase
 	@Test
 	public void testRenderHomePage5_1() throws Exception
 	{
-		executeTest(EnclosurePage_5.class, new PageParameters().set("visible", true),
+		executeTest(EnclosurePage_5.class, new PageParameters().set("visible", true, INamedParameters.Type.MANUAL),
 			"EnclosurePageExpectedResult_5-1.html");
 	}
 
@@ -432,4 +433,4 @@ public class EnclosureTest extends WicketTestCase
 
 		tester.assertContainsNot(ChildWithDeeperPathInTransparentContainerPage.LABEL_TEXT);
 	}
-}
\ No newline at end of file
+}

http://git-wip-us.apache.org/repos/asf/wicket/blob/5f0e63c8/wicket-core/src/test/java/org/apache/wicket/markup/html/link/BookmarkableHomePageLinksPage.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/markup/html/link/BookmarkableHomePageLinksPage.java b/wicket-core/src/test/java/org/apache/wicket/markup/html/link/BookmarkableHomePageLinksPage.java
index 199b510..f1df588 100644
--- a/wicket-core/src/test/java/org/apache/wicket/markup/html/link/BookmarkableHomePageLinksPage.java
+++ b/wicket-core/src/test/java/org/apache/wicket/markup/html/link/BookmarkableHomePageLinksPage.java
@@ -19,6 +19,7 @@ package org.apache.wicket.markup.html.link;
 import org.apache.wicket.Application;
 import org.apache.wicket.Page;
 import org.apache.wicket.markup.html.WebPage;
+import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 
 /**
@@ -37,7 +38,7 @@ public class BookmarkableHomePageLinksPage extends WebPage
 		Class<? extends Page> homePage = Application.get().getHomePage();
 		add(new BookmarkablePageLink<Void>("defaulthompage", homePage));
 		add(new BookmarkablePageLink<Void>("defaulthompagewithparams", homePage,
-			new PageParameters().set("param1",1).set("param2", "test")));
+			new PageParameters().set("param1",1, INamedParameters.Type.MANUAL).set("param2", "test", INamedParameters.Type.MANUAL)));
 		add(new BookmarkablePageLink<Void>("defaulthompagewithpagemap", homePage));
 	}
 

http://git-wip-us.apache.org/repos/asf/wicket/blob/5f0e63c8/wicket-core/src/test/java/org/apache/wicket/markup/html/link/BookmarkablePageLinkTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/markup/html/link/BookmarkablePageLinkTest.java b/wicket-core/src/test/java/org/apache/wicket/markup/html/link/BookmarkablePageLinkTest.java
index f0412ef..1b0830f 100644
--- a/wicket-core/src/test/java/org/apache/wicket/markup/html/link/BookmarkablePageLinkTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/markup/html/link/BookmarkablePageLinkTest.java
@@ -18,6 +18,7 @@ package org.apache.wicket.markup.html.link;
 
 import org.apache.wicket.MockPageWithLink;
 import org.apache.wicket.WicketTestCase;
+import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.junit.Assert;
 import org.junit.Test;
@@ -58,7 +59,7 @@ public class BookmarkablePageLinkTest extends WicketTestCase
 	public void bookmarkableRequestWithInterceptWithParams() throws Exception
 	{
 		PageParameters pp = new PageParameters();
-		pp.set("test", "test");
+		pp.set("test", "test", INamedParameters.Type.MANUAL);
 
 		tester.startPage(BookmarkableThrowsInterceptPage.class, pp);
 
@@ -76,7 +77,7 @@ public class BookmarkablePageLinkTest extends WicketTestCase
 	{
 		BookmarkablePageLink<MockPageWithLink> link = new BookmarkablePageLink<MockPageWithLink>(
 			"link", MockPageWithLink.class);
-		link.getPageParameters().set("urlEscapeNeeded", "someone's ^b%a&d pa\"rameter");
+		link.getPageParameters().set("urlEscapeNeeded", "someone's ^b%a&d pa\"rameter", INamedParameters.Type.MANUAL);
 
 		tester.startComponentInPage(link, null);
 		String response = tester.getLastResponse().getDocument();

http://git-wip-us.apache.org/repos/asf/wicket/blob/5f0e63c8/wicket-core/src/test/java/org/apache/wicket/markup/html/link/MountedPageLinkTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/markup/html/link/MountedPageLinkTest.java b/wicket-core/src/test/java/org/apache/wicket/markup/html/link/MountedPageLinkTest.java
index 0093571..0ea7156 100644
--- a/wicket-core/src/test/java/org/apache/wicket/markup/html/link/MountedPageLinkTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/markup/html/link/MountedPageLinkTest.java
@@ -22,6 +22,7 @@ import java.util.Collection;
 import org.apache.wicket.WicketTestCase;
 import org.apache.wicket.core.request.mapper.PageInstanceMapper;
 import org.apache.wicket.protocol.http.PageExpiredException;
+import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.junit.Before;
 import org.junit.Test;
@@ -69,7 +70,7 @@ public class MountedPageLinkTest extends WicketTestCase
 	public void testPageParametersInLink()
 	{
 		PageWithLink page = tester.startPage(PageWithLink.class,
-			new PageParameters().add("param", "value"));
+			new PageParameters().add("param", "value", INamedParameters.Type.MANUAL));
 		Link<?> link = (Link<?>)page.get("link");
 		String url = link.getURL().toString();
 		if (mount)
@@ -89,7 +90,7 @@ public class MountedPageLinkTest extends WicketTestCase
 	public void testLinkOnExpiredPage()
 	{
 		PageWithLink page = tester.startPage(PageWithLink.class,
-			new PageParameters().add("param", "value"));
+			new PageParameters().add("param", "value", INamedParameters.Type.MANUAL));
 		assertEquals("value", page.getPageParameters().get("param").toString());
 		tester.assertContains("param=value");
 		Link<?> link = (Link<?>)page.get("link");
@@ -111,7 +112,7 @@ public class MountedPageLinkTest extends WicketTestCase
 	{
 		tester.getApplication().getPageSettings().setRecreateMountedPagesAfterExpiry(false);
 		PageWithLink page = tester.startPage(PageWithLink.class,
-			new PageParameters().add("param", "value"));
+			new PageParameters().add("param", "value", INamedParameters.Type.MANUAL));
 		Link<?> link = (Link<?>)page.get("link");
 		String url = link.getURL().toString();
 		assertEquals("./wicket/page?0-1.ILinkListener-link", url);
@@ -126,7 +127,7 @@ public class MountedPageLinkTest extends WicketTestCase
 	{
 		tester.getApplication().getPageSettings().setRecreateMountedPagesAfterExpiry(false);
 		PageWithLink page = tester.startPage(PageWithLink.class,
-			new PageParameters().add("param", "value"));
+			new PageParameters().add("param", "value", INamedParameters.Type.MANUAL));
 		Link<?> link = (Link<?>)page.get("link");
 		String url = link.getURL().toString();
 		assertEquals("./wicket/page?0-1.ILinkListener-link", url);

http://git-wip-us.apache.org/repos/asf/wicket/blob/5f0e63c8/wicket-core/src/test/java/org/apache/wicket/page/expirationrecovery/PageExpirationRecoveryTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/page/expirationrecovery/PageExpirationRecoveryTest.java b/wicket-core/src/test/java/org/apache/wicket/page/expirationrecovery/PageExpirationRecoveryTest.java
index 67c4b46..b3322c6 100644
--- a/wicket-core/src/test/java/org/apache/wicket/page/expirationrecovery/PageExpirationRecoveryTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/page/expirationrecovery/PageExpirationRecoveryTest.java
@@ -18,6 +18,7 @@ package org.apache.wicket.page.expirationrecovery;
 
 import org.apache.wicket.WicketTestCase;
 import org.apache.wicket.protocol.http.PageExpiredException;
+import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.apache.wicket.settings.PageSettings;
 import org.apache.wicket.util.tester.FormTester;
@@ -33,7 +34,9 @@ import org.junit.Test;
 public class PageExpirationRecoveryTest extends WicketTestCase
 {
 
-	private final PageParameters parameters = new PageParameters().set("a", "b").set("c", "d");
+	private final PageParameters parameters = new PageParameters()
+			.set("a", "b", INamedParameters.Type.MANUAL)
+			.set("c", "d", INamedParameters.Type.MANUAL);
 
 	@Before
 	public void before()

http://git-wip-us.apache.org/repos/asf/wicket/blob/5f0e63c8/wicket-core/src/test/java/org/apache/wicket/redirect/abort/AbortExceptionTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/redirect/abort/AbortExceptionTest.java b/wicket-core/src/test/java/org/apache/wicket/redirect/abort/AbortExceptionTest.java
index b26988a..2c6e3e0 100644
--- a/wicket-core/src/test/java/org/apache/wicket/redirect/abort/AbortExceptionTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/redirect/abort/AbortExceptionTest.java
@@ -16,6 +16,7 @@
  */
 package org.apache.wicket.redirect.abort;
 
+import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.junit.Assert;
 
 import org.apache.wicket.WicketTestCase;
@@ -39,7 +40,7 @@ public class AbortExceptionTest extends WicketTestCase
 	@Test
 	public void testNoAbort()
 	{
-		tester.startPage(AbortExceptionPage.class, new PageParameters().set("trigger", false));
+		tester.startPage(AbortExceptionPage.class, new PageParameters().set("trigger", false, INamedParameters.Type.MANUAL));
 		Assert.assertEquals(1234, tester.getLastResponse().getStatus());
 	}
 
@@ -51,7 +52,7 @@ public class AbortExceptionTest extends WicketTestCase
 	{
 		try
 		{
-			tester.startPage(AbortExceptionPage.class, new PageParameters().set("trigger", true));
+			tester.startPage(AbortExceptionPage.class, new PageParameters().set("trigger", true, INamedParameters.Type.MANUAL));
 			Assert.assertEquals(1234, tester.getLastResponse().getStatus()); // this will
 			// fail
 		}

http://git-wip-us.apache.org/repos/asf/wicket/blob/5f0e63c8/wicket-core/src/test/java/org/apache/wicket/request/handler/render/StatelessPageManipulatingPageParametersTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/request/handler/render/StatelessPageManipulatingPageParametersTest.java b/wicket-core/src/test/java/org/apache/wicket/request/handler/render/StatelessPageManipulatingPageParametersTest.java
index 4157766..00254ef 100644
--- a/wicket-core/src/test/java/org/apache/wicket/request/handler/render/StatelessPageManipulatingPageParametersTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/request/handler/render/StatelessPageManipulatingPageParametersTest.java
@@ -22,6 +22,7 @@ import org.apache.wicket.markup.IMarkupResourceStreamProvider;
 import org.apache.wicket.markup.html.WebPage;
 import org.apache.wicket.markup.html.form.StatelessForm;
 import org.apache.wicket.protocol.http.WebApplication;
+import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.apache.wicket.util.resource.IResourceStream;
 import org.apache.wicket.util.resource.StringResourceStream;
@@ -61,7 +62,7 @@ public class StatelessPageManipulatingPageParametersTest extends WicketTestCase
 				protected void onSubmit()
 				{
 					PageParameters parameters = new PageParameters();
-					parameters.add("login", "");
+					parameters.add("login", "", INamedParameters.Type.MANUAL);
 					setResponsePage(SecondPage.class, parameters);
 				}
 			};

http://git-wip-us.apache.org/repos/asf/wicket/blob/5f0e63c8/wicket-core/src/test/java/org/apache/wicket/request/resource/caching/QueryStringWithVersionResourceCachingStrategyTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/request/resource/caching/QueryStringWithVersionResourceCachingStrategyTest.java b/wicket-core/src/test/java/org/apache/wicket/request/resource/caching/QueryStringWithVersionResourceCachingStrategyTest.java
index 6611a57..7e7b6db 100644
--- a/wicket-core/src/test/java/org/apache/wicket/request/resource/caching/QueryStringWithVersionResourceCachingStrategyTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/request/resource/caching/QueryStringWithVersionResourceCachingStrategyTest.java
@@ -20,6 +20,7 @@ import org.apache.wicket.Application;
 import org.apache.wicket.ThreadContext;
 import org.apache.wicket.request.cycle.RequestCycle;
 import org.apache.wicket.request.http.WebResponse;
+import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.apache.wicket.request.resource.AbstractResource;
 import org.apache.wicket.request.resource.caching.version.IResourceVersion;
@@ -56,7 +57,7 @@ public class QueryStringWithVersionResourceCachingStrategyTest extends Assert
 	public void testUndecorateUrl() throws Exception
 	{
 		PageParameters urlParameters = new PageParameters();
-		urlParameters.add(versionParameter, TEST_RESOURCE_VERSION);
+		urlParameters.add(versionParameter, TEST_RESOURCE_VERSION, INamedParameters.Type.QUERY_STRING);
 		ResourceUrl resourceUrl = new ResourceUrl("some-resource.txt", urlParameters);
 		strategy.undecorateUrl(resourceUrl);
 
@@ -109,7 +110,7 @@ public class QueryStringWithVersionResourceCachingStrategyTest extends Assert
 		try
 		{
 			PageParameters urlParameters = new PageParameters();
-			urlParameters.add(versionParameter, "9A0364B9E99BB480DD25E1F0284C8555");
+			urlParameters.add(versionParameter, "9A0364B9E99BB480DD25E1F0284C8555", INamedParameters.Type.QUERY_STRING);
 			ResourceUrl resourceUrl = new ResourceUrl("some-resource.txt", urlParameters);
 			strategy.undecorateUrl(resourceUrl);
 

http://git-wip-us.apache.org/repos/asf/wicket/blob/5f0e63c8/wicket-core/src/test/java/org/apache/wicket/session/DefaultPageFactoryTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/session/DefaultPageFactoryTest.java b/wicket-core/src/test/java/org/apache/wicket/session/DefaultPageFactoryTest.java
index 7f372ba..910fbe0 100644
--- a/wicket-core/src/test/java/org/apache/wicket/session/DefaultPageFactoryTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/session/DefaultPageFactoryTest.java
@@ -22,6 +22,7 @@ import org.apache.wicket.WicketTestCase;
 import org.apache.wicket.markup.html.WebPage;
 import org.apache.wicket.request.flow.ResetResponseException;
 import org.apache.wicket.request.handler.EmptyRequestHandler;
+import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.junit.Rule;
 import org.junit.Test;
@@ -187,7 +188,7 @@ public class DefaultPageFactoryTest extends WicketTestCase
 		expectedException.expectMessage("Can't instantiate page using constructor 'private org.apache.wicket.session.DefaultPageFactoryTest$PrivateConstructorWithParametersPage(org.apache.wicket.request.mapper.parameter.PageParameters)' and argument 'key=[value]'. This constructor is private!");
 
 		PageParameters parameters = new PageParameters();
-		parameters.add("key", "value");
+		parameters.add("key", "value", INamedParameters.Type.MANUAL);
 		pageFactory.newPage(PrivateConstructorWithParametersPage.class, parameters);
 	}
 

http://git-wip-us.apache.org/repos/asf/wicket/blob/5f0e63c8/wicket-core/src/test/java/org/apache/wicket/stateless/StatelessComponentTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/stateless/StatelessComponentTest.java b/wicket-core/src/test/java/org/apache/wicket/stateless/StatelessComponentTest.java
index 996c051..8538774 100644
--- a/wicket-core/src/test/java/org/apache/wicket/stateless/StatelessComponentTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/stateless/StatelessComponentTest.java
@@ -18,6 +18,7 @@ package org.apache.wicket.stateless;
 
 import org.apache.wicket.WicketTestCase;
 import org.apache.wicket.request.Url;
+import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.junit.Test;
 
@@ -79,8 +80,8 @@ public class StatelessComponentTest extends WicketTestCase
 	public void statelessComponentPageWithParams() throws Exception
 	{
 		PageParameters params = new PageParameters();
-		params.set("testParam1", "testValue1");
-		params.set("testParam2", "testValue2");
+		params.set("testParam1", "testValue1", INamedParameters.Type.QUERY_STRING);
+		params.set("testParam2", "testValue2", INamedParameters.Type.QUERY_STRING);
 
 		executeTest(StatelessComponentPageWithParams.class, params,
 			"StatelessComponentPageWithParams_result.html");
@@ -107,8 +108,8 @@ public class StatelessComponentTest extends WicketTestCase
 	public void statelessComponentPageWithParamsWithMount() throws Exception
 	{
 		PageParameters params = new PageParameters();
-		params.set("testParam1", "testValue1");
-		params.set("testParam2", "testValue2");
+		params.set("testParam1", "testValue1", INamedParameters.Type.QUERY_STRING);
+		params.set("testParam2", "testValue2", INamedParameters.Type.QUERY_STRING);
 		tester.getApplication().mountPage("/stateless", StatelessComponentPageWithParams.class);
 		// test is always the home page. it doesn't work then
 		executeTest(StatelessComponentPageWithParams.class, params,

http://git-wip-us.apache.org/repos/asf/wicket/blob/5f0e63c8/wicket-core/src/test/java/org/apache/wicket/stateless/StatelessFormTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/stateless/StatelessFormTest.java b/wicket-core/src/test/java/org/apache/wicket/stateless/StatelessFormTest.java
index 4150d91..e5de4c3 100644
--- a/wicket-core/src/test/java/org/apache/wicket/stateless/StatelessFormTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/stateless/StatelessFormTest.java
@@ -20,6 +20,7 @@ import org.apache.wicket.Page;
 import org.apache.wicket.WicketTestCase;
 import org.apache.wicket.mock.MockApplication;
 import org.apache.wicket.protocol.http.WebApplication;
+import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.apache.wicket.stateless.pages.HomePage;
 import org.apache.wicket.stateless.pages.LoginPage;
@@ -99,8 +100,8 @@ public class StatelessFormTest extends WicketTestCase
 	public void pageWithParameters() throws Exception
 	{
 		PageParameters parameters = new PageParameters();
-		parameters.add("first", "foo");
-		parameters.add("second", "bar");
+		parameters.add("first", "foo", INamedParameters.Type.MANUAL);
+		parameters.add("second", "bar", INamedParameters.Type.MANUAL);
 		executeTest(StatelessPageWithForm.class, parameters, "StatelessPageWithForm_expected.html");
 	}
 

http://git-wip-us.apache.org/repos/asf/wicket/blob/5f0e63c8/wicket-core/src/test/java/org/apache/wicket/util/tester/FormTesterTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/util/tester/FormTesterTest.java b/wicket-core/src/test/java/org/apache/wicket/util/tester/FormTesterTest.java
index 1274683..0e30610 100644
--- a/wicket-core/src/test/java/org/apache/wicket/util/tester/FormTesterTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/util/tester/FormTesterTest.java
@@ -31,6 +31,7 @@ import org.apache.wicket.markup.html.form.DropDownChoice;
 import org.apache.wicket.markup.html.form.Form;
 import org.apache.wicket.markup.html.form.upload.FileUpload;
 import org.apache.wicket.model.Model;
+import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.apache.wicket.util.file.File;
 import org.apache.wicket.util.resource.IResourceStream;
@@ -197,7 +198,7 @@ public class FormTesterTest extends WicketTestCase
 	@Test
 	public void submitMultipartForm()
 	{
-		tester.startPage(MockFormFileUploadPage.class, new PageParameters().set("required", false));
+		tester.startPage(MockFormFileUploadPage.class, new PageParameters().set("required", false, INamedParameters.Type.MANUAL));
 		MockFormFileUploadPage page = (MockFormFileUploadPage)tester.getLastRenderedPage();
 		MockDomainObjectFileUpload domainObject = page.getDomainObject();
 

http://git-wip-us.apache.org/repos/asf/wicket/blob/5f0e63c8/wicket-core/src/test/java/org/apache/wicket/util/tester/MockFormFileUploadPage.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/util/tester/MockFormFileUploadPage.java b/wicket-core/src/test/java/org/apache/wicket/util/tester/MockFormFileUploadPage.java
index ee2def7..0a22139 100644
--- a/wicket-core/src/test/java/org/apache/wicket/util/tester/MockFormFileUploadPage.java
+++ b/wicket-core/src/test/java/org/apache/wicket/util/tester/MockFormFileUploadPage.java
@@ -25,6 +25,7 @@ import org.apache.wicket.markup.html.form.upload.FileUpload;
 import org.apache.wicket.markup.html.form.upload.FileUploadField;
 import org.apache.wicket.model.CompoundPropertyModel;
 import org.apache.wicket.model.util.ListModel;
+import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.apache.wicket.util.lang.Bytes;
 import org.apache.wicket.util.string.StringValue;
@@ -79,7 +80,7 @@ public class MockFormFileUploadPage extends WebPage
 	@SuppressWarnings("deprecation")
 	public MockFormFileUploadPage()
 	{
-		this(new PageParameters().set("required", "true"));
+		this(new PageParameters().set("required", "true", INamedParameters.Type.MANUAL));
 	}
 
 	/**

http://git-wip-us.apache.org/repos/asf/wicket/blob/5f0e63c8/wicket-core/src/test/java/org/apache/wicket/util/tester/MockPageParameterPage.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/util/tester/MockPageParameterPage.java b/wicket-core/src/test/java/org/apache/wicket/util/tester/MockPageParameterPage.java
index 3bac594..65c1105 100644
--- a/wicket-core/src/test/java/org/apache/wicket/util/tester/MockPageParameterPage.java
+++ b/wicket-core/src/test/java/org/apache/wicket/util/tester/MockPageParameterPage.java
@@ -19,6 +19,7 @@ package org.apache.wicket.util.tester;
 import org.apache.wicket.markup.html.WebPage;
 import org.apache.wicket.markup.html.basic.Label;
 import org.apache.wicket.markup.html.link.BookmarkablePageLink;
+import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 
 /**
@@ -38,7 +39,7 @@ public class MockPageParameterPage extends WebPage
 	public MockPageParameterPage(PageParameters pageParameters)
 	{
 		add(new BookmarkablePageLink<Void>("link", MockPageParameterPage.class,
-			new PageParameters().set("id", 1)));
+			new PageParameters().set("id", 1, INamedParameters.Type.MANUAL)));
 		add(new Label("label", pageParameters.get("id").toString()));
 	}
 

http://git-wip-us.apache.org/repos/asf/wicket/blob/5f0e63c8/wicket-core/src/test/java/org/apache/wicket/util/tester/WicketTesterTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/util/tester/WicketTesterTest.java b/wicket-core/src/test/java/org/apache/wicket/util/tester/WicketTesterTest.java
index 8754fc2..e6ffeb0 100644
--- a/wicket-core/src/test/java/org/apache/wicket/util/tester/WicketTesterTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/util/tester/WicketTesterTest.java
@@ -57,6 +57,7 @@ import org.apache.wicket.request.IRequestParameters;
 import org.apache.wicket.request.Url;
 import org.apache.wicket.request.component.IRequestableComponent;
 import org.apache.wicket.request.flow.RedirectToUrlException;
+import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.apache.wicket.request.resource.ByteArrayResource;
 import org.apache.wicket.request.resource.IResource;
@@ -749,7 +750,7 @@ public class WicketTesterTest extends WicketTestCase
 	public void setQueryParameterWhenRequestHasAnQueryUrl()
 	{
 		PageParameters parameters = new PageParameters();
-		parameters.set("q_1", "q_1_value");
+		parameters.set("q_1", "q_1_value", INamedParameters.Type.MANUAL);
 		IPageProvider testPageProvider = new PageProvider(MockPageParametersAware.class, parameters);
 		IRequestHandler pageRequestHandler = new BookmarkablePageRequestHandler(testPageProvider);
 		Url url = tester.getApplication().getRootRequestMapper().mapHandler(pageRequestHandler);
@@ -770,8 +771,8 @@ public class WicketTesterTest extends WicketTestCase
 	public void setMultiValueQueryParameter()
 	{
 		PageParameters parameters = new PageParameters();
-		parameters.add("q_1", "q_1_value_1");
-		parameters.add("q_1", "q_1_value_2");
+		parameters.add("q_1", "q_1_value_1", INamedParameters.Type.MANUAL);
+		parameters.add("q_1", "q_1_value_2", INamedParameters.Type.MANUAL);
 		IPageProvider testPageProvider = new PageProvider(MockPageParametersAware.class, parameters);
 		IRequestHandler pageRequestHandler = new BookmarkablePageRequestHandler(testPageProvider);
 		Url url = tester.getApplication().getRootRequestMapper().mapHandler(pageRequestHandler);

http://git-wip-us.apache.org/repos/asf/wicket/blob/5f0e63c8/wicket-devutils/src/main/java/org/apache/wicket/devutils/debugbar/InspectorDebugPanel.java
----------------------------------------------------------------------
diff --git a/wicket-devutils/src/main/java/org/apache/wicket/devutils/debugbar/InspectorDebugPanel.java b/wicket-devutils/src/main/java/org/apache/wicket/devutils/debugbar/InspectorDebugPanel.java
index eed4d93..877e49e 100644
--- a/wicket-devutils/src/main/java/org/apache/wicket/devutils/debugbar/InspectorDebugPanel.java
+++ b/wicket-devutils/src/main/java/org/apache/wicket/devutils/debugbar/InspectorDebugPanel.java
@@ -21,6 +21,7 @@ import org.apache.wicket.Page;
 import org.apache.wicket.devutils.inspector.InspectorPage;
 import org.apache.wicket.model.IModel;
 import org.apache.wicket.model.Model;
+import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.apache.wicket.request.resource.PackageResourceReference;
 import org.apache.wicket.request.resource.ResourceReference;
@@ -79,7 +80,7 @@ public class InspectorDebugPanel extends StandardDebugPanel
 	protected PageParameters getLinkPageParameters()
 	{
 		PageParameters params = new PageParameters();
-		params.add("pageId", getPage().getId());
+		params.add("pageId", getPage().getId(), INamedParameters.Type.MANUAL);
 		return params;
 	}
 }

http://git-wip-us.apache.org/repos/asf/wicket/blob/5f0e63c8/wicket-examples/src/main/java/org/apache/wicket/examples/asemail/MailTemplate.java
----------------------------------------------------------------------
diff --git a/wicket-examples/src/main/java/org/apache/wicket/examples/asemail/MailTemplate.java b/wicket-examples/src/main/java/org/apache/wicket/examples/asemail/MailTemplate.java
index 65f5835..e0cbbdc 100644
--- a/wicket-examples/src/main/java/org/apache/wicket/examples/asemail/MailTemplate.java
+++ b/wicket-examples/src/main/java/org/apache/wicket/examples/asemail/MailTemplate.java
@@ -34,6 +34,7 @@ import org.apache.wicket.markup.html.panel.Panel;
 import org.apache.wicket.model.Model;
 import org.apache.wicket.model.PropertyModel;
 import org.apache.wicket.request.Url;
+import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.apache.wicket.request.resource.PackageResourceReference;
 import org.apache.wicket.util.template.PackageTextTemplate;
@@ -86,7 +87,7 @@ public class MailTemplate extends WicketExamplePage
 			protected void onSubmit(AjaxRequestTarget target, Form<?> form)
 			{
 				PageParameters parameters = new PageParameters();
-				parameters.set("name", name);
+				parameters.set("name", name, INamedParameters.Type.MANUAL);
 				PageProvider pageProvider = new PageProvider(TemplateBasedOnPage. class, parameters);
 				CharSequence pageHtml = ComponentRenderer.renderPage(pageProvider);
 

http://git-wip-us.apache.org/repos/asf/wicket/blob/5f0e63c8/wicket-examples/src/main/java/org/apache/wicket/examples/compref/BookmarkablePageLinkPage.java
----------------------------------------------------------------------
diff --git a/wicket-examples/src/main/java/org/apache/wicket/examples/compref/BookmarkablePageLinkPage.java b/wicket-examples/src/main/java/org/apache/wicket/examples/compref/BookmarkablePageLinkPage.java
index 48287c7..3222121 100644
--- a/wicket-examples/src/main/java/org/apache/wicket/examples/compref/BookmarkablePageLinkPage.java
+++ b/wicket-examples/src/main/java/org/apache/wicket/examples/compref/BookmarkablePageLinkPage.java
@@ -18,6 +18,7 @@ package org.apache.wicket.examples.compref;
 
 import org.apache.wicket.examples.WicketExamplePage;
 import org.apache.wicket.markup.html.link.BookmarkablePageLink;
+import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 
 
@@ -48,7 +49,7 @@ public class BookmarkablePageLinkPage extends WicketExamplePage
 		// thus be strings
 		PageParameters parameters = new PageParameters();
 		parameters.set("message",
-			"This message was passed as a page parameter argument");
+			"This message was passed as a page parameter argument", INamedParameters.Type.MANUAL);
 		add(new BookmarkablePageLink<>("pageLinkWithArgs", BookmarkablePage.class, parameters));
 	}
 
@@ -67,4 +68,4 @@ public class BookmarkablePageLinkPage extends WicketExamplePage
 
 	}
 
-}
\ No newline at end of file
+}

http://git-wip-us.apache.org/repos/asf/wicket/blob/5f0e63c8/wicket-examples/src/main/java/org/apache/wicket/examples/hangman/Guess.java
----------------------------------------------------------------------
diff --git a/wicket-examples/src/main/java/org/apache/wicket/examples/hangman/Guess.java b/wicket-examples/src/main/java/org/apache/wicket/examples/hangman/Guess.java
index 47cdfc3..494c419 100644
--- a/wicket-examples/src/main/java/org/apache/wicket/examples/hangman/Guess.java
+++ b/wicket-examples/src/main/java/org/apache/wicket/examples/hangman/Guess.java
@@ -24,6 +24,7 @@ import org.apache.wicket.markup.html.list.ListItem;
 import org.apache.wicket.markup.html.list.ListView;
 import org.apache.wicket.model.Model;
 import org.apache.wicket.model.PropertyModel;
+import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 
 /**
@@ -95,10 +96,10 @@ public class Guess extends HangmanPage
 				};
 
 				PageParameters parameters = new PageParameters();
-				parameters.set(Letter.PARAMETER_LETTER, letter.asString());
+				parameters.set(Letter.PARAMETER_LETTER, letter.asString(), INamedParameters.Type.MANUAL);
 				if (letter.isGuessed())
 				{
-					parameters.set(Letter.PARAMETER_GUESSED, true);
+					parameters.set(Letter.PARAMETER_GUESSED, true, INamedParameters.Type.MANUAL);
 				}
 				link.add(new Image("image", Letter.LETTER_RESOURCE_REFERENCE, parameters));
 				listItem.add(link);

http://git-wip-us.apache.org/repos/asf/wicket/blob/5f0e63c8/wicket-examples/src/main/java/org/apache/wicket/examples/library/BookDetails.java
----------------------------------------------------------------------
diff --git a/wicket-examples/src/main/java/org/apache/wicket/examples/library/BookDetails.java b/wicket-examples/src/main/java/org/apache/wicket/examples/library/BookDetails.java
index 8d057fa..e65422b 100644
--- a/wicket-examples/src/main/java/org/apache/wicket/examples/library/BookDetails.java
+++ b/wicket-examples/src/main/java/org/apache/wicket/examples/library/BookDetails.java
@@ -23,6 +23,7 @@ import org.apache.wicket.examples.library.Book.WritingStyle;
 import org.apache.wicket.markup.html.basic.Label;
 import org.apache.wicket.markup.html.link.BookmarkablePageLink;
 import org.apache.wicket.model.Model;
+import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.apache.wicket.util.string.StringList;
 import org.apache.wicket.util.string.StringValueConversionException;
@@ -117,7 +118,7 @@ public final class BookDetails extends AuthenticatedWebPage
 
 		if (book != null)
 		{
-			link.getPageParameters().add("id", book.getId());
+			link.getPageParameters().add("id", book.getId(), INamedParameters.Type.MANUAL);
 			link.add(new Label("title", new Model<>(book)));
 		}
 		else

http://git-wip-us.apache.org/repos/asf/wicket/blob/5f0e63c8/wicket-examples/src/main/java/org/apache/wicket/examples/linkomatic/Home.java
----------------------------------------------------------------------
diff --git a/wicket-examples/src/main/java/org/apache/wicket/examples/linkomatic/Home.java b/wicket-examples/src/main/java/org/apache/wicket/examples/linkomatic/Home.java
index b9fe147..a50e37f 100644
--- a/wicket-examples/src/main/java/org/apache/wicket/examples/linkomatic/Home.java
+++ b/wicket-examples/src/main/java/org/apache/wicket/examples/linkomatic/Home.java
@@ -41,6 +41,7 @@ import org.apache.wicket.model.AbstractReadOnlyModel;
 import org.apache.wicket.model.CompoundPropertyModel;
 import org.apache.wicket.model.Model;
 import org.apache.wicket.model.PropertyModel;
+import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.resource.PackageResourceReference;
 import org.apache.wicket.request.resource.SharedResourceReference;
 import org.apache.wicket.util.file.Files;
@@ -99,7 +100,7 @@ public class Home extends WicketExamplePage
 		// Link to Page3 is an external link which takes a parameter
 		BookmarkablePageLink<Void> page3Link = new BookmarkablePageLink<>("page3Link", Page3.class);
 		page3Link.getPageParameters()
-				.add("bookmarkparameter", "3++2 & 5 � >< space + �");
+				.add("bookmarkparameter", "3++2 & 5 � >< space + �", INamedParameters.Type.MANUAL);
 		add(page3Link);
 
 		// Link to BookDetails page

http://git-wip-us.apache.org/repos/asf/wicket/blob/5f0e63c8/wicket-examples/src/main/java/org/apache/wicket/examples/niceurl/Page2.java
----------------------------------------------------------------------
diff --git a/wicket-examples/src/main/java/org/apache/wicket/examples/niceurl/Page2.java b/wicket-examples/src/main/java/org/apache/wicket/examples/niceurl/Page2.java
index d856113..2a4d8ca 100644
--- a/wicket-examples/src/main/java/org/apache/wicket/examples/niceurl/Page2.java
+++ b/wicket-examples/src/main/java/org/apache/wicket/examples/niceurl/Page2.java
@@ -21,6 +21,7 @@ import java.util.Random;
 import org.apache.wicket.examples.WicketExamplePage;
 import org.apache.wicket.markup.html.basic.Label;
 import org.apache.wicket.markup.html.link.BookmarkablePageLink;
+import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 
 
@@ -49,8 +50,8 @@ public class Page2 extends WicketExamplePage
 		String newP2 = String.valueOf(random.nextInt());
 
 		PageParameters params = new PageParameters();
-		params.set("param1", newP1 + " " + newP2);
-		params.set("param2", newP2 + " " + newP1);
+		params.set("param1", newP1 + " " + newP2, INamedParameters.Type.MANUAL);
+		params.set("param2", newP2 + " " + newP1, INamedParameters.Type.MANUAL);
 
 		BookmarkablePageLink<?> link = new BookmarkablePageLink<>("refreshLink", getClass(), params);
 		add(link);

http://git-wip-us.apache.org/repos/asf/wicket/blob/5f0e63c8/wicket-examples/src/main/java/org/apache/wicket/examples/niceurl/mounted/Page5.java
----------------------------------------------------------------------
diff --git a/wicket-examples/src/main/java/org/apache/wicket/examples/niceurl/mounted/Page5.java b/wicket-examples/src/main/java/org/apache/wicket/examples/niceurl/mounted/Page5.java
index d87a12a..ce7ee44 100644
--- a/wicket-examples/src/main/java/org/apache/wicket/examples/niceurl/mounted/Page5.java
+++ b/wicket-examples/src/main/java/org/apache/wicket/examples/niceurl/mounted/Page5.java
@@ -23,6 +23,7 @@ import org.apache.wicket.examples.WicketExamplePage;
 import org.apache.wicket.examples.niceurl.Home;
 import org.apache.wicket.markup.html.basic.Label;
 import org.apache.wicket.markup.html.link.BookmarkablePageLink;
+import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 
 
@@ -60,8 +61,8 @@ public class Page5 extends WicketExamplePage
 		String newP2 = String.valueOf(random.nextInt());
 
 		PageParameters params = new PageParameters();
-		params.set("param1", newP1);
-		params.set("param2", newP2);
+		params.set("param1", newP1, INamedParameters.Type.MANUAL);
+		params.set("param2", newP2, INamedParameters.Type.MANUAL);
 
 		BookmarkablePageLink<?> link = new BookmarkablePageLink<>("refreshLink", Page5.class, params);
 		add(link);

http://git-wip-us.apache.org/repos/asf/wicket/blob/5f0e63c8/wicket-examples/src/main/java/org/apache/wicket/examples/source/SourcesPage.java
----------------------------------------------------------------------
diff --git a/wicket-examples/src/main/java/org/apache/wicket/examples/source/SourcesPage.java b/wicket-examples/src/main/java/org/apache/wicket/examples/source/SourcesPage.java
index 2dd37ed..eb1e14a 100644
--- a/wicket-examples/src/main/java/org/apache/wicket/examples/source/SourcesPage.java
+++ b/wicket-examples/src/main/java/org/apache/wicket/examples/source/SourcesPage.java
@@ -49,6 +49,7 @@ import org.apache.wicket.markup.html.list.ListView;
 import org.apache.wicket.model.AbstractReadOnlyModel;
 import org.apache.wicket.model.LoadableDetachableModel;
 import org.apache.wicket.request.http.handler.ErrorCodeRequestHandler;
+import org.apache.wicket.request.mapper.parameter.INamedParameters;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.apache.wicket.util.io.IOUtils;
 import org.apache.wicket.util.lang.PackageName;
@@ -450,10 +451,10 @@ public class SourcesPage extends WebPage
 	public static PageParameters generatePageParameters(Class<? extends Page> clazz, String fileName)
 	{
 		PageParameters p = new PageParameters();
-		p.set(PAGE_CLASS, clazz.getName());
+		p.set(PAGE_CLASS, clazz.getName(), INamedParameters.Type.MANUAL);
 		if (fileName != null)
 		{
-			p.set(SOURCE, fileName);
+			p.set(SOURCE, fileName, INamedParameters.Type.MANUAL);
 		}
 		return p;
 	}