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/09/22 10:58:38 UTC

[1/2] git commit: WICKET-5350 adjust components' wildcards

Repository: wicket
Updated Branches:
  refs/heads/master f45ce896d -> c9ac08c8c


WICKET-5350 adjust components' wildcards

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

Branch: refs/heads/master
Commit: c9ac08c8c143a0160d11c34dedf38b7b93beb417
Parents: ee41e39
Author: svenmeier <sv...@meiers.net>
Authored: Sat Jul 26 23:44:00 2014 +0200
Committer: Martin Tzvetanov Grigorov <mg...@apache.org>
Committed: Mon Sep 22 10:46:33 2014 +0200

----------------------------------------------------------------------
 .../wicket/markup/html/form/AbstractChoice.java     | 16 ++++++++--------
 .../apache/wicket/markup/html/form/CheckGroup.java  |  2 +-
 .../markup/html/form/upload/FileUploadField.java    |  5 +++--
 .../apache/wicket/markup/html/list/ListView.java    | 10 +++++-----
 .../wicket/markup/html/list/PageableListView.java   |  4 ++--
 .../wicket/markup/html/list/PropertyListView.java   |  4 ++--
 .../markup/repeater/AbstractPageableView.java       |  2 +-
 .../wicket/markup/repeater/RefreshingView.java      |  3 ++-
 .../markup/repeater/data/ListDataProvider.java      |  2 +-
 .../markup/html/form/ListMultipleChoiceTest.java    |  4 ++--
 .../wicket/extensions/yui/calendar/DatesPage1.java  |  2 +-
 .../wicket/examples/ajax/builtin/ChoicePage.java    |  4 ++--
 .../examples/compref/CheckBoxSelectorPage.java      |  2 +-
 .../apache/wicket/examples/compref/SelectPage.java  |  8 ++++----
 .../org/apache/wicket/examples/dates/DatesPage.java |  2 +-
 .../ajax/markup/html/AjaxEditableChoiceLabel.java   |  6 +++---
 .../markup/html/form/palette/Palette.java           | 11 +++++------
 .../form/palette/component/AbstractOptions.java     |  2 +-
 .../html/form/palette/component/Recorder.java       |  6 +++---
 .../markup/html/form/select/SelectOption.java       |  2 +-
 .../markup/html/form/select/SelectOptions.java      | 14 +++++++-------
 .../repeater/data/table/filter/ChoiceFilter.java    | 10 ++++++----
 .../table/filter/ChoiceFilteredPropertyColumn.java  |  8 ++++----
 .../html/repeater/data/table/DataTableTest.java     |  5 +++--
 24 files changed, 69 insertions(+), 65 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/wicket/blob/c9ac08c8/wicket-core/src/main/java/org/apache/wicket/markup/html/form/AbstractChoice.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/main/java/org/apache/wicket/markup/html/form/AbstractChoice.java b/wicket-core/src/main/java/org/apache/wicket/markup/html/form/AbstractChoice.java
index e29c7fb..ee566db 100644
--- a/wicket-core/src/main/java/org/apache/wicket/markup/html/form/AbstractChoice.java
+++ b/wicket-core/src/main/java/org/apache/wicket/markup/html/form/AbstractChoice.java
@@ -22,7 +22,7 @@ import java.util.List;
 import org.apache.wicket.markup.ComponentTag;
 import org.apache.wicket.markup.MarkupStream;
 import org.apache.wicket.model.IModel;
-import org.apache.wicket.model.util.WildcardListModel;
+import org.apache.wicket.model.util.ListModel;
 import org.apache.wicket.util.convert.IConverter;
 import org.apache.wicket.util.string.AppendingStringBuffer;
 import org.apache.wicket.util.string.Strings;
@@ -90,7 +90,7 @@ public abstract class AbstractChoice<T, E> extends FormComponent<T>
 	 */
 	public AbstractChoice(final String id)
 	{
-		this(id, new WildcardListModel<>(new ArrayList<E>()), new ChoiceRenderer<E>());
+		this(id, new ListModel<>(new ArrayList<E>()), new ChoiceRenderer<E>());
 	}
 
 	/**
@@ -103,7 +103,7 @@ public abstract class AbstractChoice<T, E> extends FormComponent<T>
 	 */
 	public AbstractChoice(final String id, final List<? extends E> choices)
 	{
-		this(id, new WildcardListModel<>(choices), new ChoiceRenderer<E>());
+		this(id, new ListModel<>(choices), new ChoiceRenderer<E>());
 	}
 
 	/**
@@ -119,7 +119,7 @@ public abstract class AbstractChoice<T, E> extends FormComponent<T>
 	public AbstractChoice(final String id, final List<? extends E> choices,
 		final IChoiceRenderer<? super E> renderer)
 	{
-		this(id, new WildcardListModel<>(choices), renderer);
+		this(id, new ListModel<>(choices), renderer);
 	}
 
 	/**
@@ -134,7 +134,7 @@ public abstract class AbstractChoice<T, E> extends FormComponent<T>
 	 */
 	public AbstractChoice(final String id, IModel<T> model, final List<? extends E> choices)
 	{
-		this(id, model, new WildcardListModel<>(choices), new ChoiceRenderer<E>());
+		this(id, model, new ListModel<>(choices), new ChoiceRenderer<E>());
 	}
 
 	/**
@@ -152,7 +152,7 @@ public abstract class AbstractChoice<T, E> extends FormComponent<T>
 	public AbstractChoice(final String id, IModel<T> model, final List<? extends E> choices,
 		final IChoiceRenderer<? super E> renderer)
 	{
-		this(id, model, new WildcardListModel<>(choices), renderer);
+		this(id, model, new ListModel<>(choices), renderer);
 	}
 
 	/**
@@ -271,7 +271,7 @@ public abstract class AbstractChoice<T, E> extends FormComponent<T>
 	 *            the list of choices
 	 * @return this for chaining
 	 */
-	public final AbstractChoice<T, E> setChoices(List<E> choices)
+	public final AbstractChoice<T, E> setChoices(List<? extends E> choices)
 	{
 		if ((this.choices != null))
 		{
@@ -280,7 +280,7 @@ public abstract class AbstractChoice<T, E> extends FormComponent<T>
 				addStateChange();
 			}
 		}
-		this.choices = new WildcardListModel<>(choices);
+		this.choices = new ListModel<>(choices);
 		return this;
 	}
 

http://git-wip-us.apache.org/repos/asf/wicket/blob/c9ac08c8/wicket-core/src/main/java/org/apache/wicket/markup/html/form/CheckGroup.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/main/java/org/apache/wicket/markup/html/form/CheckGroup.java b/wicket-core/src/main/java/org/apache/wicket/markup/html/form/CheckGroup.java
index cec0f48..d7b6bf5 100644
--- a/wicket-core/src/main/java/org/apache/wicket/markup/html/form/CheckGroup.java
+++ b/wicket-core/src/main/java/org/apache/wicket/markup/html/form/CheckGroup.java
@@ -225,7 +225,7 @@ public class CheckGroup<T> extends FormComponent<Collection<T>> implements IOnCh
 	 * 
 	 * @see #wantOnSelectionChangedNotifications()
 	 */
-	protected void onSelectionChanged(final Collection<? extends T> newSelection)
+	protected void onSelectionChanged(final Collection<T> newSelection)
 	{
 	}
 

http://git-wip-us.apache.org/repos/asf/wicket/blob/c9ac08c8/wicket-core/src/main/java/org/apache/wicket/markup/html/form/upload/FileUploadField.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/main/java/org/apache/wicket/markup/html/form/upload/FileUploadField.java b/wicket-core/src/main/java/org/apache/wicket/markup/html/form/upload/FileUploadField.java
index 8a22745..d01ae9a 100644
--- a/wicket-core/src/main/java/org/apache/wicket/markup/html/form/upload/FileUploadField.java
+++ b/wicket-core/src/main/java/org/apache/wicket/markup/html/form/upload/FileUploadField.java
@@ -62,9 +62,10 @@ public class FileUploadField extends FormComponent<List<FileUpload>>
 	 * @param model
 	 *            the model holding the uploaded {@link FileUpload}s
 	 */
-	public FileUploadField(final String id, IModel<List<FileUpload>> model)
+	@SuppressWarnings("unchecked")
+	public FileUploadField(final String id, IModel<? extends List<FileUpload>> model)
 	{
-		super(id, model);
+		super(id, (IModel<List<FileUpload>>)model);
 	}
 
 	/**

http://git-wip-us.apache.org/repos/asf/wicket/blob/c9ac08c8/wicket-core/src/main/java/org/apache/wicket/markup/html/list/ListView.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/main/java/org/apache/wicket/markup/html/list/ListView.java b/wicket-core/src/main/java/org/apache/wicket/markup/html/list/ListView.java
index bb5a25a..54b3015 100644
--- a/wicket-core/src/main/java/org/apache/wicket/markup/html/list/ListView.java
+++ b/wicket-core/src/main/java/org/apache/wicket/markup/html/list/ListView.java
@@ -134,7 +134,7 @@ public abstract class ListView<T> extends AbstractRepeater
 	 * @param model
 	 * @see org.apache.wicket.Component#Component(String, IModel)
 	 */
-	public ListView(final String id, final IModel<? extends List<? extends T>> model)
+	public ListView(final String id, final IModel<? extends List<T>> model)
 	{
 		super(id, model);
 
@@ -156,7 +156,7 @@ public abstract class ListView<T> extends AbstractRepeater
 	 *            List to cast to Serializable
 	 * @see org.apache.wicket.Component#Component(String, IModel)
 	 */
-	public ListView(final String id, final List<? extends T> list)
+	public ListView(final String id, final List<T> list)
 	{
 		this(id, Model.ofList(list));
 	}
@@ -169,9 +169,9 @@ public abstract class ListView<T> extends AbstractRepeater
 	 * @return The list of items in this list view.
 	 */
 	@SuppressWarnings("unchecked")
-	public final List<? extends T> getList()
+	public final List<T> getList()
 	{
-		final List<? extends T> list = (List<? extends T>)getDefaultModelObject();
+		final List<T> list = (List<T>)getDefaultModelObject();
 		if (list == null)
 		{
 			return Collections.emptyList();
@@ -364,7 +364,7 @@ public abstract class ListView<T> extends AbstractRepeater
 	 *            The list for the new model. The list must implement {@link Serializable}.
 	 * @return This for chaining
 	 */
-	public ListView<T> setList(List<? extends T> list)
+	public ListView<T> setList(List<T> list)
 	{
 		setDefaultModel(Model.ofList(list));
 		return this;

http://git-wip-us.apache.org/repos/asf/wicket/blob/c9ac08c8/wicket-core/src/main/java/org/apache/wicket/markup/html/list/PageableListView.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/main/java/org/apache/wicket/markup/html/list/PageableListView.java b/wicket-core/src/main/java/org/apache/wicket/markup/html/list/PageableListView.java
index 2ea39bc..7c717dd 100644
--- a/wicket-core/src/main/java/org/apache/wicket/markup/html/list/PageableListView.java
+++ b/wicket-core/src/main/java/org/apache/wicket/markup/html/list/PageableListView.java
@@ -51,7 +51,7 @@ public abstract class PageableListView<T> extends ListView<T> implements IPageab
 	 * @param itemsPerPage
 	 *            Number of rows to show on a page
 	 */
-	public PageableListView(final String id, final IModel<? extends List<? extends T>> model,
+	public PageableListView(final String id, final IModel<? extends List<T>> model,
 		int itemsPerPage)
 	{
 		super(id, model);
@@ -70,7 +70,7 @@ public abstract class PageableListView<T> extends ListView<T> implements IPageab
 	 *            Number of rows to show on a page
 	 * @see ListView#ListView(String, List)
 	 */
-	public PageableListView(final String id, final List<? extends T> list, final int itemsPerPage)
+	public PageableListView(final String id, final List<T> list, final int itemsPerPage)
 	{
 		super(id, list);
 		this.itemsPerPage = itemsPerPage;

http://git-wip-us.apache.org/repos/asf/wicket/blob/c9ac08c8/wicket-core/src/main/java/org/apache/wicket/markup/html/list/PropertyListView.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/main/java/org/apache/wicket/markup/html/list/PropertyListView.java b/wicket-core/src/main/java/org/apache/wicket/markup/html/list/PropertyListView.java
index b380d8b..464a14e 100644
--- a/wicket-core/src/main/java/org/apache/wicket/markup/html/list/PropertyListView.java
+++ b/wicket-core/src/main/java/org/apache/wicket/markup/html/list/PropertyListView.java
@@ -57,7 +57,7 @@ public abstract class PropertyListView<T> extends ListView<T>
 	 * @param model
 	 *            wrapping a List
 	 */
-	public PropertyListView(final String id, final IModel<? extends List<? extends T>> model)
+	public PropertyListView(final String id, final IModel<? extends List<T>> model)
 	{
 		super(id, model);
 	}
@@ -71,7 +71,7 @@ public abstract class PropertyListView<T> extends ListView<T>
 	 * @param list
 	 *            unmodeled List
 	 */
-	public PropertyListView(final String id, final List<? extends T> list)
+	public PropertyListView(final String id, final List<T> list)
 	{
 		super(id, list);
 	}

http://git-wip-us.apache.org/repos/asf/wicket/blob/c9ac08c8/wicket-core/src/main/java/org/apache/wicket/markup/repeater/AbstractPageableView.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/main/java/org/apache/wicket/markup/repeater/AbstractPageableView.java b/wicket-core/src/main/java/org/apache/wicket/markup/repeater/AbstractPageableView.java
index d9b93a1..297ee8c 100644
--- a/wicket-core/src/main/java/org/apache/wicket/markup/repeater/AbstractPageableView.java
+++ b/wicket-core/src/main/java/org/apache/wicket/markup/repeater/AbstractPageableView.java
@@ -73,7 +73,7 @@ public abstract class AbstractPageableView<T> extends RefreshingView<T> implemen
 	 * @param model
 	 * @see org.apache.wicket.Component#Component(String, IModel)
 	 */
-	public AbstractPageableView(String id, IModel<? extends Collection<? extends T>> model)
+	public AbstractPageableView(String id, IModel<? extends Collection<T>> model)
 	{
 		super(id, model);
 		clearCachedItemCount();

http://git-wip-us.apache.org/repos/asf/wicket/blob/c9ac08c8/wicket-core/src/main/java/org/apache/wicket/markup/repeater/RefreshingView.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/main/java/org/apache/wicket/markup/repeater/RefreshingView.java b/wicket-core/src/main/java/org/apache/wicket/markup/repeater/RefreshingView.java
index a2c2220..3e18d88 100644
--- a/wicket-core/src/main/java/org/apache/wicket/markup/repeater/RefreshingView.java
+++ b/wicket-core/src/main/java/org/apache/wicket/markup/repeater/RefreshingView.java
@@ -16,6 +16,7 @@
  */
 package org.apache.wicket.markup.repeater;
 
+import java.util.Collection;
 import java.util.Iterator;
 
 import org.apache.wicket.markup.repeater.util.ModelIteratorAdapter;
@@ -78,7 +79,7 @@ public abstract class RefreshingView<T> extends RepeatingView
 	 * @param model
 	 *            model
 	 */
-	public RefreshingView(String id, IModel<?> model)
+	public RefreshingView(String id, IModel<? extends Collection<T>> model)
 	{
 		super(id, model);
 	}

http://git-wip-us.apache.org/repos/asf/wicket/blob/c9ac08c8/wicket-core/src/main/java/org/apache/wicket/markup/repeater/data/ListDataProvider.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/main/java/org/apache/wicket/markup/repeater/data/ListDataProvider.java b/wicket-core/src/main/java/org/apache/wicket/markup/repeater/data/ListDataProvider.java
index 6ec9248..c3af567 100644
--- a/wicket-core/src/main/java/org/apache/wicket/markup/repeater/data/ListDataProvider.java
+++ b/wicket-core/src/main/java/org/apache/wicket/markup/repeater/data/ListDataProvider.java
@@ -75,7 +75,7 @@ public class ListDataProvider<T extends Serializable> implements IDataProvider<T
 	}
 
 	@Override
-	public Iterator<? extends T> iterator(final long first, final long count)
+	public Iterator<T> iterator(final long first, final long count)
 	{
 		List<T> list = getData();
 

http://git-wip-us.apache.org/repos/asf/wicket/blob/c9ac08c8/wicket-core/src/test/java/org/apache/wicket/markup/html/form/ListMultipleChoiceTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/markup/html/form/ListMultipleChoiceTest.java b/wicket-core/src/test/java/org/apache/wicket/markup/html/form/ListMultipleChoiceTest.java
index 53cd69f..ea57bbd 100644
--- a/wicket-core/src/test/java/org/apache/wicket/markup/html/form/ListMultipleChoiceTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/markup/html/form/ListMultipleChoiceTest.java
@@ -23,7 +23,7 @@ import java.util.List;
 import org.apache.wicket.WicketTestCase;
 import org.apache.wicket.markup.html.WebPage;
 import org.apache.wicket.model.IModel;
-import org.apache.wicket.model.Model;
+import org.apache.wicket.model.util.ListModel;
 import org.apache.wicket.util.tester.FormTester;
 import org.junit.Test;
 
@@ -31,7 +31,7 @@ public class ListMultipleChoiceTest extends WicketTestCase
 {
 	public class TestPage extends WebPage
 	{
-		public IModel<List<String>> selectedValues = new Model(new ArrayList<String>());
+		public IModel<List<String>> selectedValues = new ListModel<String>(new ArrayList<String>());
 		public List<String> choices = Arrays.asList("a", "b", "c", "d", "e", "f");
 
 		public TestPage()

http://git-wip-us.apache.org/repos/asf/wicket/blob/c9ac08c8/wicket-datetime/src/test/java/org/apache/wicket/extensions/yui/calendar/DatesPage1.java
----------------------------------------------------------------------
diff --git a/wicket-datetime/src/test/java/org/apache/wicket/extensions/yui/calendar/DatesPage1.java b/wicket-datetime/src/test/java/org/apache/wicket/extensions/yui/calendar/DatesPage1.java
index 51e643d..e9ada95 100644
--- a/wicket-datetime/src/test/java/org/apache/wicket/extensions/yui/calendar/DatesPage1.java
+++ b/wicket-datetime/src/test/java/org/apache/wicket/extensions/yui/calendar/DatesPage1.java
@@ -86,7 +86,7 @@ public class DatesPage1 extends WebPage
 		{
 			super(id);
 			// sort locales on strings of selected locale
-			setChoices(new AbstractReadOnlyModel<List<? extends Locale>>()
+			setChoices(new AbstractReadOnlyModel<List<Locale>>()
 			{
 				private static final long serialVersionUID = 1L;
 

http://git-wip-us.apache.org/repos/asf/wicket/blob/c9ac08c8/wicket-examples/src/main/java/org/apache/wicket/examples/ajax/builtin/ChoicePage.java
----------------------------------------------------------------------
diff --git a/wicket-examples/src/main/java/org/apache/wicket/examples/ajax/builtin/ChoicePage.java b/wicket-examples/src/main/java/org/apache/wicket/examples/ajax/builtin/ChoicePage.java
index b6a773b..b630228 100644
--- a/wicket-examples/src/main/java/org/apache/wicket/examples/ajax/builtin/ChoicePage.java
+++ b/wicket-examples/src/main/java/org/apache/wicket/examples/ajax/builtin/ChoicePage.java
@@ -69,7 +69,7 @@ public class ChoicePage extends BasePage
 		modelsMap.put("CADILLAC", Arrays.asList("CTS", "DTS", "ESCALADE", "SRX", "DEVILLE"));
 		modelsMap.put("FORD", Arrays.asList("CROWN", "ESCAPE", "EXPEDITION", "EXPLORER", "F-150"));
 
-		IModel<List<? extends String>> makeChoices = new AbstractReadOnlyModel<List<? extends String>>()
+		IModel<List<String>> makeChoices = new AbstractReadOnlyModel<List<String>>()
 		{
 			@Override
 			public List<String> getObject()
@@ -79,7 +79,7 @@ public class ChoicePage extends BasePage
 
 		};
 
-		IModel<List<? extends String>> modelChoices = new AbstractReadOnlyModel<List<? extends String>>()
+		IModel<List<String>> modelChoices = new AbstractReadOnlyModel<List<String>>()
 		{
 			@Override
 			public List<String> getObject()

http://git-wip-us.apache.org/repos/asf/wicket/blob/c9ac08c8/wicket-examples/src/main/java/org/apache/wicket/examples/compref/CheckBoxSelectorPage.java
----------------------------------------------------------------------
diff --git a/wicket-examples/src/main/java/org/apache/wicket/examples/compref/CheckBoxSelectorPage.java b/wicket-examples/src/main/java/org/apache/wicket/examples/compref/CheckBoxSelectorPage.java
index d0427f4..90d05bf 100644
--- a/wicket-examples/src/main/java/org/apache/wicket/examples/compref/CheckBoxSelectorPage.java
+++ b/wicket-examples/src/main/java/org/apache/wicket/examples/compref/CheckBoxSelectorPage.java
@@ -85,7 +85,7 @@ public class CheckBoxSelectorPage extends WicketExamplePage
 			}
 		});
 		final CheckBoxMultipleChoice<Integer> choice = new CheckBoxMultipleChoice<Integer>(
-			"choice", Model.ofList(new ArrayList()), Arrays.asList(1, 2, 3, 4));
+			"choice", Model.of(new ArrayList<Integer>()), Arrays.asList(1, 2, 3, 4));
 		form.add(choice);
 		form.add(new CheckboxMultipleChoiceSelector("choiceSelector", choice));
 		final CheckBox loose1 = new CheckBox("looseCheck1", Model.of(Boolean.FALSE));

http://git-wip-us.apache.org/repos/asf/wicket/blob/c9ac08c8/wicket-examples/src/main/java/org/apache/wicket/examples/compref/SelectPage.java
----------------------------------------------------------------------
diff --git a/wicket-examples/src/main/java/org/apache/wicket/examples/compref/SelectPage.java b/wicket-examples/src/main/java/org/apache/wicket/examples/compref/SelectPage.java
index 09edec3..e858f6b 100644
--- a/wicket-examples/src/main/java/org/apache/wicket/examples/compref/SelectPage.java
+++ b/wicket-examples/src/main/java/org/apache/wicket/examples/compref/SelectPage.java
@@ -22,7 +22,6 @@ import java.util.Collection;
 import java.util.Iterator;
 import java.util.List;
 
-import org.apache.wicket.util.io.IClusterable;
 import org.apache.wicket.examples.WicketExamplePage;
 import org.apache.wicket.extensions.markup.html.form.select.IOptionRenderer;
 import org.apache.wicket.extensions.markup.html.form.select.Select;
@@ -33,7 +32,8 @@ import org.apache.wicket.markup.html.panel.FeedbackPanel;
 import org.apache.wicket.model.CompoundPropertyModel;
 import org.apache.wicket.model.IModel;
 import org.apache.wicket.model.Model;
-import org.apache.wicket.model.util.WildcardCollectionModel;
+import org.apache.wicket.model.util.CollectionModel;
+import org.apache.wicket.util.io.IClusterable;
 
 
 /**
@@ -49,7 +49,7 @@ public class SelectPage extends WicketExamplePage
 		"Java.Net");
 
 	/** available choices for large selection box. */
-	private static final List<? extends String> MANY_CHOICES = Arrays.asList("Choice1", "Choice2",
+	private static final List<String> MANY_CHOICES = Arrays.asList("Choice1", "Choice2",
 		"Choice3", "Choice4", "Choice5", "Choice6", "Choice7", "Choice8", "Choice9");
 
 	/**
@@ -103,7 +103,7 @@ public class SelectPage extends WicketExamplePage
 			}
 
 		};
-		IModel<Collection<? extends String>> model = new WildcardCollectionModel<String>(
+		IModel<Collection<String>> model = new CollectionModel<String>(
 			MANY_CHOICES);
 		choices.add(new SelectOptions<>("manychoices", model, renderer));
 

http://git-wip-us.apache.org/repos/asf/wicket/blob/c9ac08c8/wicket-examples/src/main/java/org/apache/wicket/examples/dates/DatesPage.java
----------------------------------------------------------------------
diff --git a/wicket-examples/src/main/java/org/apache/wicket/examples/dates/DatesPage.java b/wicket-examples/src/main/java/org/apache/wicket/examples/dates/DatesPage.java
index b2b7edf..30bc937 100644
--- a/wicket-examples/src/main/java/org/apache/wicket/examples/dates/DatesPage.java
+++ b/wicket-examples/src/main/java/org/apache/wicket/examples/dates/DatesPage.java
@@ -83,7 +83,7 @@ public class DatesPage extends WicketExamplePage
 		{
 			super(id);
 			// sort locales on strings of selected locale
-			setChoices(new AbstractReadOnlyModel<List<? extends Locale>>()
+			setChoices(new AbstractReadOnlyModel<List<Locale>>()
 			{
 				@Override
 				public List<Locale> getObject()

http://git-wip-us.apache.org/repos/asf/wicket/blob/c9ac08c8/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/AjaxEditableChoiceLabel.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/AjaxEditableChoiceLabel.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/AjaxEditableChoiceLabel.java
index cac99fe..632a1e8 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/AjaxEditableChoiceLabel.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/AjaxEditableChoiceLabel.java
@@ -51,7 +51,7 @@ public class AjaxEditableChoiceLabel<T> extends AjaxEditableLabel<T>
 	private IModel<? extends List<? extends T>> choices;
 
 	/** The renderer used to generate display/id values for the objects. */
-	private IChoiceRenderer<T> renderer;
+	private IChoiceRenderer<? super T> renderer;
 
 	/**
 	 * Construct.
@@ -120,7 +120,7 @@ public class AjaxEditableChoiceLabel<T> extends AjaxEditableLabel<T>
 	 *            The rendering engine
 	 */
 	public AjaxEditableChoiceLabel(final String id, final IModel<T> model,
-		final IModel<? extends List<? extends T>> choices, final IChoiceRenderer<T> renderer)
+		final IModel<? extends List<? extends T>> choices, final IChoiceRenderer<? super T> renderer)
 	{
 		super(id, model);
 		this.choices = choices;
@@ -156,7 +156,7 @@ public class AjaxEditableChoiceLabel<T> extends AjaxEditableLabel<T>
 	 *            The rendering engine
 	 */
 	public AjaxEditableChoiceLabel(final String id, final IModel<T> model,
-		final List<? extends T> choices, final IChoiceRenderer<T> renderer)
+		final List<? extends T> choices, final IChoiceRenderer<? super T> renderer)
 	{
 		this(id, model, Model.ofList(choices), renderer);
 	}

http://git-wip-us.apache.org/repos/asf/wicket/blob/c9ac08c8/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/form/palette/Palette.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/form/palette/Palette.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/form/palette/Palette.java
index 41534df..1030829 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/form/palette/Palette.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/form/palette/Palette.java
@@ -89,7 +89,7 @@ public class Palette<T> extends FormComponentPanel<Collection<T>>
 	/**
 	 * choice render used to render the choices in both available and selected collections
 	 */
-	private final IChoiceRenderer<T> choiceRenderer;
+	private final IChoiceRenderer<? super T> choiceRenderer;
 
 	/** number of rows to show in the select boxes */
 	private final int rows;
@@ -135,7 +135,7 @@ public class Palette<T> extends FormComponentPanel<Collection<T>>
 	 *            Allow user to move selections up and down
 	 */
 	public Palette(final String id, final IModel<? extends Collection<T>> choicesModel,
-		final IChoiceRenderer<T> choiceRenderer, final int rows, final boolean allowOrder)
+		final IChoiceRenderer<? super T> choiceRenderer, final int rows, final boolean allowOrder)
 	{
 		this(id, null, choicesModel, choiceRenderer, rows, allowOrder);
 	}
@@ -155,10 +155,9 @@ public class Palette<T> extends FormComponentPanel<Collection<T>>
 	 * @param allowOrder
 	 *            Allow user to move selections up and down
 	 */
-	@SuppressWarnings("unchecked")
 	public Palette(final String id, final IModel<? extends Collection<T>> model,
 		final IModel<? extends Collection<? extends T>> choicesModel,
-		final IChoiceRenderer<T> choiceRenderer, final int rows, final boolean allowOrder)
+		final IChoiceRenderer<? super T> choiceRenderer, final int rows, final boolean allowOrder)
 	{
 		this(id, model, choicesModel, choiceRenderer, rows, allowOrder, false);
 	}
@@ -182,7 +181,7 @@ public class Palette<T> extends FormComponentPanel<Collection<T>>
 	 */
 	public Palette(final String id, final IModel<? extends Collection<T>> model,
 		final IModel<? extends Collection<? extends T>> choicesModel,
-		final IChoiceRenderer<T> choiceRenderer, final int rows, final boolean allowOrder,
+		final IChoiceRenderer<? super T> choiceRenderer, final int rows, final boolean allowOrder,
 		boolean allowMoveAll)
 	{
 		super(id, (IModel<Collection<T>>)model);
@@ -540,7 +539,7 @@ public class Palette<T> extends FormComponentPanel<Collection<T>>
 	/**
 	 * @return choice renderer
 	 */
-	public IChoiceRenderer<T> getChoiceRenderer()
+	public IChoiceRenderer<? super T> getChoiceRenderer()
 	{
 		return choiceRenderer;
 	}

http://git-wip-us.apache.org/repos/asf/wicket/blob/c9ac08c8/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/form/palette/component/AbstractOptions.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/form/palette/component/AbstractOptions.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/form/palette/component/AbstractOptions.java
index f5d3fc0..9c276fd 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/form/palette/component/AbstractOptions.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/form/palette/component/AbstractOptions.java
@@ -71,7 +71,7 @@ public abstract class AbstractOptions<T> extends FormComponent<T>
 	{
 		StringBuilder buffer = new StringBuilder(128);
 		Iterator<T> options = getOptionsIterator();
-		IChoiceRenderer<T> renderer = getPalette().getChoiceRenderer();
+		IChoiceRenderer<? super T> renderer = getPalette().getChoiceRenderer();
 
 		boolean localizeDisplayValues = localizeDisplayValues();
 

http://git-wip-us.apache.org/repos/asf/wicket/blob/c9ac08c8/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/form/palette/component/Recorder.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/form/palette/component/Recorder.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/form/palette/component/Recorder.java
index 64fa895..f75f57a 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/form/palette/component/Recorder.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/form/palette/component/Recorder.java
@@ -87,7 +87,7 @@ public class Recorder<T> extends HiddenField<String>
 	private void initIds()
 	{
 		// construct the model string based on selection collection
-		IChoiceRenderer<T> renderer = getPalette().getChoiceRenderer();
+		IChoiceRenderer<? super T> renderer = getPalette().getChoiceRenderer();
 		StringBuilder modelStringBuffer = new StringBuilder();
 		Collection<T> modelCollection = getPalette().getModelCollection();
 		if (modelCollection == null)
@@ -123,7 +123,7 @@ public class Recorder<T> extends HiddenField<String>
 	 */
 	public List<T> getSelectedList()
 	{
-		final IChoiceRenderer<T> renderer = getPalette().getChoiceRenderer();
+		final IChoiceRenderer<? super T> renderer = getPalette().getChoiceRenderer();
 		final Collection<? extends T> choices = getPalette().getChoices();
 		final List<T> selected = new ArrayList<>(choices.size());
 
@@ -160,7 +160,7 @@ public class Recorder<T> extends HiddenField<String>
 	 */
 	public List<T> getUnselectedList()
 	{
-		final IChoiceRenderer<T> renderer = getPalette().getChoiceRenderer();
+		final IChoiceRenderer<? super T> renderer = getPalette().getChoiceRenderer();
 		final Collection<? extends T> choices = getPalette().getChoices();
 		final List<T> unselected = new ArrayList<>(choices.size());
 		final String ids = getValue();

http://git-wip-us.apache.org/repos/asf/wicket/blob/c9ac08c8/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/form/select/SelectOption.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/form/select/SelectOption.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/form/select/SelectOption.java
index 2320222..16833d9 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/form/select/SelectOption.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/form/select/SelectOption.java
@@ -54,7 +54,7 @@ public class SelectOption<T> extends WebMarkupContainer implements IGenericCompo
 	 * @param model
 	 * @see WebMarkupContainer#WebMarkupContainer(String, IModel)
 	 */
-	public SelectOption(final String id, final IModel<? extends T> model)
+	public SelectOption(final String id, final IModel<T> model)
 	{
 		super(id, model);
 	}

http://git-wip-us.apache.org/repos/asf/wicket/blob/c9ac08c8/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/form/select/SelectOptions.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/form/select/SelectOptions.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/form/select/SelectOptions.java
index 1b2ed77..c02f058 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/form/select/SelectOptions.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/form/select/SelectOptions.java
@@ -24,7 +24,7 @@ import org.apache.wicket.markup.html.WebMarkupContainer;
 import org.apache.wicket.markup.parser.XmlTag.TagType;
 import org.apache.wicket.markup.repeater.RepeatingView;
 import org.apache.wicket.model.IModel;
-import org.apache.wicket.model.util.WildcardCollectionModel;
+import org.apache.wicket.model.util.CollectionModel;
 
 
 /**
@@ -56,7 +56,7 @@ public class SelectOptions<T> extends RepeatingView
 	 * @param model
 	 * @param renderer
 	 */
-	public SelectOptions(final String id, final IModel<? extends Collection<? extends T>> model,
+	public SelectOptions(final String id, final IModel<? extends Collection<T>> model,
 		final IOptionRenderer<T> renderer)
 	{
 		super(id, model);
@@ -71,10 +71,10 @@ public class SelectOptions<T> extends RepeatingView
 	 * @param elements
 	 * @param renderer
 	 */
-	public SelectOptions(final String id, final Collection<? extends T> elements,
+	public SelectOptions(final String id, final Collection<T> elements,
 		final IOptionRenderer<T> renderer)
 	{
-		this(id, new WildcardCollectionModel<>(elements), renderer);
+		this(id, new CollectionModel<>(elements), renderer);
 	}
 
 	/**
@@ -107,7 +107,7 @@ public class SelectOptions<T> extends RepeatingView
 			// populate this repeating view with SelectOption components
 			removeAll();
 
-			Collection<? extends T> modelObject = (Collection<? extends T>)getDefaultModelObject();
+			Collection<T> modelObject = (Collection<T>)getDefaultModelObject();
 
 			if (modelObject != null)
 			{
@@ -135,7 +135,7 @@ public class SelectOptions<T> extends RepeatingView
 	 * @param model
 	 * @return a {@link SelectOption}
 	 */
-	protected SelectOption<T> newOption(final String text, final IModel<? extends T> model)
+	protected SelectOption<T> newOption(final String text, final IModel<T> model)
 	{
 		return new SimpleSelectOption<>("option", model, text);
 	}
@@ -155,7 +155,7 @@ public class SelectOptions<T> extends RepeatingView
 		 * @param model
 		 * @param text
 		 */
-		public SimpleSelectOption(final String id, final IModel<? extends V> model, final String text)
+		public SimpleSelectOption(final String id, final IModel<V> model, final String text)
 		{
 			super(id, model);
 			this.text = text;

http://git-wip-us.apache.org/repos/asf/wicket/blob/c9ac08c8/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/filter/ChoiceFilter.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/filter/ChoiceFilter.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/filter/ChoiceFilter.java
index 7917bd5..f4038cc 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/filter/ChoiceFilter.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/filter/ChoiceFilter.java
@@ -49,7 +49,7 @@ public class ChoiceFilter<T> extends AbstractFilter
 	 * @param autoSubmit
 	 */
 	public ChoiceFilter(final String id, final IModel<T> model, final FilterForm<?> form,
-		final IModel<List<? extends T>> choices, final boolean autoSubmit)
+		final IModel<? extends List<? extends T>> choices, final boolean autoSubmit)
 	{
 		this(id, model, form, choices, new ChoiceRenderer<T>(), autoSubmit);
 	}
@@ -76,7 +76,8 @@ public class ChoiceFilter<T> extends AbstractFilter
 	 * @param autoSubmit
 	 */
 	public ChoiceFilter(final String id, final IModel<T> model, final FilterForm<?> form,
-		final List<? extends T> choices, final IChoiceRenderer<T> renderer, final boolean autoSubmit)
+		final List<? extends T> choices, final IChoiceRenderer<? super T> renderer,
+		final boolean autoSubmit)
 	{
 		this(id, model, form, Model.ofList(choices), renderer, autoSubmit);
 	}
@@ -97,7 +98,8 @@ public class ChoiceFilter<T> extends AbstractFilter
 	 * @see DropDownChoice
 	 */
 	public ChoiceFilter(final String id, final IModel<T> model, final FilterForm<?> form,
-		final IModel<List<? extends T>> choices, final IChoiceRenderer<T> renderer,
+		final IModel<? extends List<? extends T>> choices,
+		final IChoiceRenderer<? super T> renderer,
 		final boolean autoSubmit)
 	{
 		super(id, form);
@@ -127,7 +129,7 @@ public class ChoiceFilter<T> extends AbstractFilter
 	 * @return created drop down component
 	 */
 	protected DropDownChoice<T> newDropDownChoice(final String id, final IModel<T> model,
-		final IModel<List<? extends T>> choices, final IChoiceRenderer<T> renderer)
+		final IModel<? extends List<? extends T>> choices, final IChoiceRenderer<? super T> renderer)
 	{
 		DropDownChoice<T> dropDownChoice = new DropDownChoice<>(id, model, choices, renderer);
 		dropDownChoice.setNullValid(true);

http://git-wip-us.apache.org/repos/asf/wicket/blob/c9ac08c8/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/filter/ChoiceFilteredPropertyColumn.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/filter/ChoiceFilteredPropertyColumn.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/filter/ChoiceFilteredPropertyColumn.java
index bedf33c..cf05fbe 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/filter/ChoiceFilteredPropertyColumn.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/filter/ChoiceFilteredPropertyColumn.java
@@ -40,7 +40,7 @@ import org.apache.wicket.model.PropertyModel;
 public class ChoiceFilteredPropertyColumn<T, Y, S> extends FilteredPropertyColumn<T, S>
 {
 	private static final long serialVersionUID = 1L;
-	private final IModel<List<? extends Y>> filterChoices;
+	private final IModel<? extends List<? extends Y>> filterChoices;
 
 	/**
 	 * @param displayModel
@@ -51,7 +51,7 @@ public class ChoiceFilteredPropertyColumn<T, Y, S> extends FilteredPropertyColum
 	 */
 	public ChoiceFilteredPropertyColumn(final IModel<String> displayModel,
 		final S sortProperty, final String propertyExpression,
-		final IModel<List<? extends Y>> filterChoices)
+		final IModel<? extends List<? extends Y>> filterChoices)
 	{
 		super(displayModel, sortProperty, propertyExpression);
 		this.filterChoices = filterChoices;
@@ -64,7 +64,7 @@ public class ChoiceFilteredPropertyColumn<T, Y, S> extends FilteredPropertyColum
 	 *            collection of choices used in the choice filter
 	 */
 	public ChoiceFilteredPropertyColumn(final IModel<String> displayModel,
-		final String propertyExpression, final IModel<List<? extends Y>> filterChoices)
+		final String propertyExpression, final IModel<? extends List<? extends Y>> filterChoices)
 	{
 		super(displayModel, propertyExpression);
 		this.filterChoices = filterChoices;
@@ -138,7 +138,7 @@ public class ChoiceFilteredPropertyColumn<T, Y, S> extends FilteredPropertyColum
 	/**
 	 * @return filter choices model
 	 */
-	protected final IModel<List<? extends Y>> getFilterChoices()
+	protected final IModel<? extends List<? extends Y>> getFilterChoices()
 	{
 		return filterChoices;
 	}

http://git-wip-us.apache.org/repos/asf/wicket/blob/c9ac08c8/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..4ce110b 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
@@ -150,10 +150,11 @@ public class DataTableTest extends WicketTestCase
 				}
 
 				@Override
-				public Iterator<? extends Number> iterator(long first, long count)
+				public Iterator<Integer> iterator(long first, long count)
 				{
 					StringValue emptyValue = getPageParameters().get("empty");
-					return emptyValue.toBoolean() ? Collections.<Integer> emptyList().iterator()
+					return emptyValue.toBoolean()
+						? Collections.<Integer> emptyList().iterator()
 						: items.iterator();
 				}
 


[2/2] git commit: WICKET-5350 remove wildcards from #ofList() and others

Posted by mg...@apache.org.
WICKET-5350 remove wildcards from #ofList() and others

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

Branch: refs/heads/master
Commit: ee41e39a5695bef0f6fc3c31b38e5f78de21d018
Parents: f45ce89
Author: svenmeier <sv...@meiers.net>
Authored: Sat Jul 26 23:41:37 2014 +0200
Committer: Martin Tzvetanov Grigorov <mg...@apache.org>
Committed: Mon Sep 22 10:46:33 2014 +0200

----------------------------------------------------------------------
 .../java/org/apache/wicket/model/Model.java     | 18 +++---
 .../model/util/WildcardCollectionModel.java     | 57 ------------------
 .../wicket/model/util/WildcardListModel.java    | 62 --------------------
 .../wicket/model/util/WildcardSetModel.java     | 57 ------------------
 4 files changed, 9 insertions(+), 185 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/wicket/blob/ee41e39a/wicket-core/src/main/java/org/apache/wicket/model/Model.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/main/java/org/apache/wicket/model/Model.java b/wicket-core/src/main/java/org/apache/wicket/model/Model.java
index 8cdadac..4838d4b 100644
--- a/wicket-core/src/main/java/org/apache/wicket/model/Model.java
+++ b/wicket-core/src/main/java/org/apache/wicket/model/Model.java
@@ -24,10 +24,10 @@ import java.util.Map;
 import java.util.Set;
 
 import org.apache.wicket.WicketRuntimeException;
+import org.apache.wicket.model.util.CollectionModel;
+import org.apache.wicket.model.util.ListModel;
 import org.apache.wicket.model.util.MapModel;
-import org.apache.wicket.model.util.WildcardCollectionModel;
-import org.apache.wicket.model.util.WildcardListModel;
-import org.apache.wicket.model.util.WildcardSetModel;
+import org.apache.wicket.model.util.SetModel;
 import org.apache.wicket.util.lang.Objects;
 
 
@@ -78,9 +78,9 @@ public class Model<T extends Serializable> implements IModel<T>
 	 *            The List, which may or may not be Serializable
 	 * @return A Model object wrapping the List
 	 */
-	public static <C> IModel<List<? extends C>> ofList(final List<? extends C> list)
+	public static <C> IModel<List<C>> ofList(final List<C> list)
 	{
-		return new WildcardListModel<>(list);
+		return new ListModel<>(list);
 	}
 
 	/**
@@ -110,9 +110,9 @@ public class Model<T extends Serializable> implements IModel<T>
 	 *            The Set, which may or may not be Serializable
 	 * @return A Model object wrapping the Set
 	 */
-	public static <C> IModel<Set<? extends C>> ofSet(final Set<? extends C> set)
+	public static <C> IModel<Set<C>> ofSet(final Set<C> set)
 	{
-		return new WildcardSetModel<>(set);
+		return new SetModel<>(set);
 	}
 
 	/**
@@ -125,9 +125,9 @@ public class Model<T extends Serializable> implements IModel<T>
 	 *            The Collection, which may or may not be Serializable
 	 * @return A Model object wrapping the Set
 	 */
-	public static <C> IModel<Collection<? extends C>> of(final Collection<? extends C> collection)
+	public static <C> IModel<Collection<C>> ofCollection(final Collection<C> collection)
 	{
-		return new WildcardCollectionModel<>(collection);
+		return new CollectionModel<>(collection);
 	}
 
 

http://git-wip-us.apache.org/repos/asf/wicket/blob/ee41e39a/wicket-core/src/main/java/org/apache/wicket/model/util/WildcardCollectionModel.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/main/java/org/apache/wicket/model/util/WildcardCollectionModel.java b/wicket-core/src/main/java/org/apache/wicket/model/util/WildcardCollectionModel.java
deleted file mode 100644
index 8a8d138..0000000
--- a/wicket-core/src/main/java/org/apache/wicket/model/util/WildcardCollectionModel.java
+++ /dev/null
@@ -1,57 +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.model.util;
-
-import java.util.ArrayList;
-import java.util.Collection;
-
-
-/**
- * Based on <code>Model</code> but for any collections of serializable objects.
- * 
- * @author Timo Rantalaiho
- * @param <T>
- *            type of object inside collection
- */
-public class WildcardCollectionModel<T> extends GenericBaseModel<Collection<? extends T>>
-{
-	private static final long serialVersionUID = 1L;
-
-	/**
-	 * Creates empty model
-	 */
-	public WildcardCollectionModel()
-	{
-	}
-
-	/**
-	 * Creates model that will contain <code>collection</code>
-	 * 
-	 * @param collection
-	 */
-	public WildcardCollectionModel(Collection<? extends T> collection)
-	{
-		setObject(collection);
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	protected Collection<? extends T> createSerializableVersionOf(Collection<? extends T> object)
-	{
-		return new ArrayList<T>(object);
-	}
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/wicket/blob/ee41e39a/wicket-core/src/main/java/org/apache/wicket/model/util/WildcardListModel.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/main/java/org/apache/wicket/model/util/WildcardListModel.java b/wicket-core/src/main/java/org/apache/wicket/model/util/WildcardListModel.java
deleted file mode 100644
index 059e7c7..0000000
--- a/wicket-core/src/main/java/org/apache/wicket/model/util/WildcardListModel.java
+++ /dev/null
@@ -1,62 +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.model.util;
-
-import java.util.ArrayList;
-import java.util.List;
-
-
-/**
- * Based on <code>Model</code> but for lists of serializable objects.
- * 
- * @author Timo Rantalaiho
- * @param <T>
- *            type of object inside list
- */
-public class WildcardListModel<T> extends GenericBaseModel<List<? extends T>>
-{
-	private static final long serialVersionUID = 1L;
-
-	/**
-	 * Creates empty model
-	 */
-	public WildcardListModel()
-	{
-	}
-
-	/**
-	 * Creates model that will contain <code>list</code>
-	 * 
-	 * @param list
-	 * 
-	 */
-	public WildcardListModel(List<? extends T> list)
-	{
-		setObject(list);
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	protected List<? extends T> createSerializableVersionOf(List<? extends T> object)
-	{
-		if (object == null)
-		{
-			return null;
-		}
-		return new ArrayList<T>(object);
-	}
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/wicket/blob/ee41e39a/wicket-core/src/main/java/org/apache/wicket/model/util/WildcardSetModel.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/main/java/org/apache/wicket/model/util/WildcardSetModel.java b/wicket-core/src/main/java/org/apache/wicket/model/util/WildcardSetModel.java
deleted file mode 100644
index 97fabb7..0000000
--- a/wicket-core/src/main/java/org/apache/wicket/model/util/WildcardSetModel.java
+++ /dev/null
@@ -1,57 +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.model.util;
-
-import java.util.HashSet;
-import java.util.Set;
-
-
-/**
- * Based on <code>Model</code> but for sets of serializable objects.
- * 
- * @author Timo Rantalaiho
- * @param <T>
- *            type of object inside set
- */
-public class WildcardSetModel<T> extends GenericBaseModel<Set<? extends T>>
-{
-	private static final long serialVersionUID = 1L;
-
-	/**
-	 * Creates empty model
-	 */
-	public WildcardSetModel()
-	{
-	}
-
-	/**
-	 * Creates model that will contain <code>set</code>
-	 * 
-	 * @param set
-	 */
-	public WildcardSetModel(Set<? extends T> set)
-	{
-		setObject(set);
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	protected Set<? extends T> createSerializableVersionOf(Set<? extends T> object)
-	{
-		return new HashSet<T>(object);
-	}
-}
\ No newline at end of file