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 2012/05/09 16:32:59 UTC
git commit: WICKET-4535 Inconsistent use of generics in sorting APIs
Updated Branches:
refs/heads/master 0f16b908e -> 8441fdd6d
WICKET-4535 Inconsistent use of generics in sorting APIs
Project: http://git-wip-us.apache.org/repos/asf/wicket/repo
Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/8441fdd6
Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/8441fdd6
Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/8441fdd6
Branch: refs/heads/master
Commit: 8441fdd6dd1cf02baeb62f84b204a0aef4ff5b1a
Parents: 0f16b90
Author: Martin Tzvetanov Grigorov <mg...@apache.org>
Authored: Wed May 9 17:32:22 2012 +0300
Committer: Martin Tzvetanov Grigorov <mg...@apache.org>
Committed: Wed May 9 17:32:22 2012 +0300
----------------------------------------------------------------------
.../devutils/diskstore/browser/BrowserPanel.java | 2 +-
.../devutils/diskstore/browser/BrowserTable.java | 2 +-
.../diskstore/browser/PageWindowColumn.java | 2 +-
.../examples/repeater/AjaxDataTablePage.java | 14 ++--
.../wicket/examples/repeater/DataTablePage.java | 4 +-
.../spring/common/web/ContactsDisplayPage.java | 15 ++--
.../apache/wicket/examples/tree/TableTreePage.java | 20 +++---
.../data/sort/AjaxFallbackOrderByBorder.java | 40 ++++++-----
.../data/sort/AjaxFallbackOrderByLink.java | 38 +++++-----
.../data/table/AjaxFallbackDefaultDataTable.java | 4 +-
.../data/table/AjaxFallbackHeadersToolbar.java | 14 ++--
.../repeater/data/table/AjaxNavigationToolbar.java | 4 +-
.../markup/html/repeater/data/sort/ISortState.java | 8 +-
.../html/repeater/data/sort/OrderByBorder.java | 19 +++---
.../html/repeater/data/sort/OrderByLink.java | 55 ++++++++-------
.../html/repeater/data/table/AbstractColumn.java | 10 ++-
.../html/repeater/data/table/AbstractToolbar.java | 8 +-
.../markup/html/repeater/data/table/DataTable.java | 28 ++++----
.../html/repeater/data/table/DefaultDataTable.java | 4 +-
.../html/repeater/data/table/HeaderlessColumn.java | 4 +-
.../html/repeater/data/table/HeadersToolbar.java | 20 +++---
.../markup/html/repeater/data/table/IColumn.java | 10 ++-
.../html/repeater/data/table/IStyledColumn.java | 4 +-
.../repeater/data/table/NavigationToolbar.java | 6 +-
.../html/repeater/data/table/NoRecordsToolbar.java | 4 +-
.../html/repeater/data/table/PropertyColumn.java | 6 +-
.../table/filter/ChoiceFilteredPropertyColumn.java | 7 +-
.../repeater/data/table/filter/FilterToolbar.java | 8 +-
.../data/table/filter/FilteredAbstractColumn.java | 8 ++-
.../data/table/filter/FilteredPropertyColumn.java | 8 ++-
.../data/table/filter/IFilteredColumn.java | 4 +-
.../table/filter/TextFilteredPropertyColumn.java | 6 +-
.../html/repeater/tree/DefaultTableTree.java | 6 +-
.../markup/html/repeater/tree/TableTree.java | 24 ++++---
.../repeater/tree/table/AbstractTreeColumn.java | 14 +++--
.../html/repeater/tree/table/ITreeColumn.java | 8 ++-
.../html/repeater/tree/table/TreeColumn.java | 6 +-
.../markup/html/tree/table/AbstractColumn.java | 1 +
.../extensions/markup/html/tree/table/IColumn.java | 1 +
.../html/repeater/data/table/DataTablePage.java | 14 ++--
.../html/repeater/data/table/DataTableTest.java | 6 +-
41 files changed, 256 insertions(+), 210 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/wicket/blob/8441fdd6/wicket-devutils/src/main/java/org/apache/wicket/devutils/diskstore/browser/BrowserPanel.java
----------------------------------------------------------------------
diff --git a/wicket-devutils/src/main/java/org/apache/wicket/devutils/diskstore/browser/BrowserPanel.java b/wicket-devutils/src/main/java/org/apache/wicket/devutils/diskstore/browser/BrowserPanel.java
index abd9076..27c7a1c 100644
--- a/wicket-devutils/src/main/java/org/apache/wicket/devutils/diskstore/browser/BrowserPanel.java
+++ b/wicket-devutils/src/main/java/org/apache/wicket/devutils/diskstore/browser/BrowserPanel.java
@@ -116,7 +116,7 @@ public class BrowserPanel extends Panel
{
PageWindowProvider provider = new PageWindowProvider(sessionId);
- List<IColumn<PageWindowDescription>> columns = new ArrayList<IColumn<PageWindowDescription>>();
+ List<IColumn<PageWindowDescription, String>> columns = new ArrayList<IColumn<PageWindowDescription, String>>();
PageWindowColumn pageIdColumn = new PageWindowColumn(Model.of("Id"), "id");
columns.add(pageIdColumn);
http://git-wip-us.apache.org/repos/asf/wicket/blob/8441fdd6/wicket-devutils/src/main/java/org/apache/wicket/devutils/diskstore/browser/BrowserTable.java
----------------------------------------------------------------------
diff --git a/wicket-devutils/src/main/java/org/apache/wicket/devutils/diskstore/browser/BrowserTable.java b/wicket-devutils/src/main/java/org/apache/wicket/devutils/diskstore/browser/BrowserTable.java
index 1ddd48b..264d88a 100644
--- a/wicket-devutils/src/main/java/org/apache/wicket/devutils/diskstore/browser/BrowserTable.java
+++ b/wicket-devutils/src/main/java/org/apache/wicket/devutils/diskstore/browser/BrowserTable.java
@@ -38,7 +38,7 @@ class BrowserTable extends DefaultDataTable<PageWindowDescription, String>
* @param provider
* the provider of page descriptions
*/
- public BrowserTable(String id, List<IColumn<PageWindowDescription>> columns,
+ public BrowserTable(String id, List<IColumn<PageWindowDescription, String>> columns,
PageWindowProvider provider)
{
super(id, columns, provider, 20);
http://git-wip-us.apache.org/repos/asf/wicket/blob/8441fdd6/wicket-devutils/src/main/java/org/apache/wicket/devutils/diskstore/browser/PageWindowColumn.java
----------------------------------------------------------------------
diff --git a/wicket-devutils/src/main/java/org/apache/wicket/devutils/diskstore/browser/PageWindowColumn.java b/wicket-devutils/src/main/java/org/apache/wicket/devutils/diskstore/browser/PageWindowColumn.java
index e99488e..ea21877 100644
--- a/wicket-devutils/src/main/java/org/apache/wicket/devutils/diskstore/browser/PageWindowColumn.java
+++ b/wicket-devutils/src/main/java/org/apache/wicket/devutils/diskstore/browser/PageWindowColumn.java
@@ -29,7 +29,7 @@ import org.apache.wicket.serialize.ISerializer;
/**
* A column that shows the page attributes (id, name, size)
*/
-class PageWindowColumn extends PropertyColumn<PageWindowDescription>
+class PageWindowColumn extends PropertyColumn<PageWindowDescription, String>
{
/**
* Construct.
http://git-wip-us.apache.org/repos/asf/wicket/blob/8441fdd6/wicket-examples/src/main/java/org/apache/wicket/examples/repeater/AjaxDataTablePage.java
----------------------------------------------------------------------
diff --git a/wicket-examples/src/main/java/org/apache/wicket/examples/repeater/AjaxDataTablePage.java b/wicket-examples/src/main/java/org/apache/wicket/examples/repeater/AjaxDataTablePage.java
index 3a1b3fc..7fc2c3f 100644
--- a/wicket-examples/src/main/java/org/apache/wicket/examples/repeater/AjaxDataTablePage.java
+++ b/wicket-examples/src/main/java/org/apache/wicket/examples/repeater/AjaxDataTablePage.java
@@ -39,9 +39,9 @@ public class AjaxDataTablePage extends BasePage
*/
public AjaxDataTablePage()
{
- List<IColumn<Contact>> columns = new ArrayList<IColumn<Contact>>();
+ List<IColumn<Contact, String>> columns = new ArrayList<IColumn<Contact, String>>();
- columns.add(new AbstractColumn<Contact>(new Model<String>("Actions"))
+ columns.add(new AbstractColumn<Contact, String>(new Model<String>("Actions"))
{
public void populateItem(Item<ICellPopulator<Contact>> cellItem, String componentId,
IModel<Contact> model)
@@ -50,13 +50,13 @@ public class AjaxDataTablePage extends BasePage
}
});
- columns.add(new PropertyColumn<Contact>(new Model<String>("ID"), "id"));
- columns.add(new PropertyColumn<Contact>(new Model<String>("First Name"), "firstName",
+ columns.add(new PropertyColumn<Contact, String>(new Model<String>("ID"), "id"));
+ columns.add(new PropertyColumn<Contact, String>(new Model<String>("First Name"), "firstName",
"firstName"));
- columns.add(new PropertyColumn<Contact>(new Model<String>("Last Name"), "lastName",
+ columns.add(new PropertyColumn<Contact, String>(new Model<String>("Last Name"), "lastName",
"lastName"));
- columns.add(new PropertyColumn<Contact>(new Model<String>("Home Phone"), "homePhone"));
- columns.add(new PropertyColumn<Contact>(new Model<String>("Cell Phone"), "cellPhone"));
+ columns.add(new PropertyColumn<Contact, String>(new Model<String>("Home Phone"), "homePhone"));
+ columns.add(new PropertyColumn<Contact, String>(new Model<String>("Cell Phone"), "cellPhone"));
add(new AjaxFallbackDefaultDataTable<Contact, String>("table", columns,
new SortableContactDataProvider(), 8));
http://git-wip-us.apache.org/repos/asf/wicket/blob/8441fdd6/wicket-examples/src/main/java/org/apache/wicket/examples/repeater/DataTablePage.java
----------------------------------------------------------------------
diff --git a/wicket-examples/src/main/java/org/apache/wicket/examples/repeater/DataTablePage.java b/wicket-examples/src/main/java/org/apache/wicket/examples/repeater/DataTablePage.java
index 3b5009d..26a3ea9 100644
--- a/wicket-examples/src/main/java/org/apache/wicket/examples/repeater/DataTablePage.java
+++ b/wicket-examples/src/main/java/org/apache/wicket/examples/repeater/DataTablePage.java
@@ -43,9 +43,9 @@ public class DataTablePage extends BasePage
*/
public DataTablePage()
{
- List<IColumn<?>> columns = new ArrayList<IColumn<?>>();
+ List<IColumn<Contact, String>> columns = new ArrayList<IColumn<Contact, String>>();
- columns.add(new AbstractColumn<Contact>(new Model<String>("Actions"))
+ columns.add(new AbstractColumn<Contact, String>(new Model<String>("Actions"))
{
public void populateItem(Item<ICellPopulator<Contact>> cellItem, String componentId,
IModel<Contact> model)
http://git-wip-us.apache.org/repos/asf/wicket/blob/8441fdd6/wicket-examples/src/main/java/org/apache/wicket/examples/spring/common/web/ContactsDisplayPage.java
----------------------------------------------------------------------
diff --git a/wicket-examples/src/main/java/org/apache/wicket/examples/spring/common/web/ContactsDisplayPage.java b/wicket-examples/src/main/java/org/apache/wicket/examples/spring/common/web/ContactsDisplayPage.java
index cde2b3a..1a67f13 100644
--- a/wicket-examples/src/main/java/org/apache/wicket/examples/spring/common/web/ContactsDisplayPage.java
+++ b/wicket-examples/src/main/java/org/apache/wicket/examples/spring/common/web/ContactsDisplayPage.java
@@ -16,7 +16,8 @@
*/
package org.apache.wicket.examples.spring.common.web;
-import java.util.Arrays;
+import java.util.ArrayList;
+import java.util.List;
import org.apache.wicket.examples.spring.common.Contact;
import org.apache.wicket.extensions.markup.html.repeater.data.table.DefaultDataTable;
@@ -38,13 +39,13 @@ public abstract class ContactsDisplayPage extends BasePage
*/
public ContactsDisplayPage()
{
- IColumn<?>[] cols = new IColumn[4];
- cols[0] = new PropertyColumn(new Model<String>("first name"), "firstName", "firstName");
- cols[1] = new PropertyColumn(new Model<String>("last name"), "lastName", "lastName");
- cols[2] = new PropertyColumn(new Model<String>("home phone"), "homePhone");
- cols[3] = new PropertyColumn(new Model<String>("cell phone"), "cellPhone");
+ List<IColumn<Contact, String>> cols = new ArrayList<IColumn<Contact, String>>(4);
+ cols.add(new PropertyColumn<Contact, String>(new Model<String>("first name"), "firstName", "firstName"));
+ cols.add(new PropertyColumn<Contact, String>(new Model<String>("last name"), "lastName", "lastName"));
+ cols.add(new PropertyColumn<Contact, String>(new Model<String>("home phone"), "homePhone"));
+ cols.add(new PropertyColumn<Contact, String>(new Model<String>("cell phone"), "cellPhone"));
- add(new DefaultDataTable("contacts", Arrays.asList(cols), getDataProvider(), 5));
+ add(new DefaultDataTable<Contact, String>("contacts", cols, getDataProvider(), 5));
}
protected abstract ContactDataProvider getDataProvider();
http://git-wip-us.apache.org/repos/asf/wicket/blob/8441fdd6/wicket-examples/src/main/java/org/apache/wicket/examples/tree/TableTreePage.java
----------------------------------------------------------------------
diff --git a/wicket-examples/src/main/java/org/apache/wicket/examples/tree/TableTreePage.java b/wicket-examples/src/main/java/org/apache/wicket/examples/tree/TableTreePage.java
index 52ff5d9..486d5aa 100644
--- a/wicket-examples/src/main/java/org/apache/wicket/examples/tree/TableTreePage.java
+++ b/wicket-examples/src/main/java/org/apache/wicket/examples/tree/TableTreePage.java
@@ -45,14 +45,14 @@ public class TableTreePage extends TreePage
private static final long serialVersionUID = 1L;
- private TableTree<Foo> tree;
+ private TableTree<Foo, String> tree;
@Override
protected AbstractTree<Foo> createTree(FooProvider provider, IModel<Set<Foo>> state)
{
- List<IColumn<Foo>> columns = createColumns();
+ List<IColumn<Foo, String>> columns = createColumns();
- tree = new TableTree<Foo>("tree", columns, provider, Integer.MAX_VALUE, state)
+ tree = new TableTree<Foo, String>("tree", columns, provider, Integer.MAX_VALUE, state)
{
private static final long serialVersionUID = 1L;
@@ -73,15 +73,15 @@ public class TableTreePage extends TreePage
return tree;
}
- private List<IColumn<Foo>> createColumns()
+ private List<IColumn<Foo, String>> createColumns()
{
- List<IColumn<Foo>> columns = new ArrayList<IColumn<Foo>>();
+ List<IColumn<Foo, String>> columns = new ArrayList<IColumn<Foo, String>>();
- columns.add(new PropertyColumn<Foo>(Model.of("ID"), "id"));
+ columns.add(new PropertyColumn<Foo, String>(Model.of("ID"), "id"));
- columns.add(new TreeColumn<Foo>(Model.of("Tree")));
+ columns.add(new TreeColumn<Foo, String>(Model.of("Tree")));
- columns.add(new AbstractColumn<Foo>(Model.of("Depth"))
+ columns.add(new AbstractColumn<Foo, String>(Model.of("Depth"))
{
private static final long serialVersionUID = 1L;
@@ -100,8 +100,8 @@ public class TableTreePage extends TreePage
}
});
- columns.add(new PropertyColumn<Foo>(Model.of("Bar"), "bar"));
- columns.add(new PropertyColumn<Foo>(Model.of("Baz"), "baz"));
+ columns.add(new PropertyColumn<Foo, String>(Model.of("Bar"), "bar"));
+ columns.add(new PropertyColumn<Foo, String>(Model.of("Baz"), "baz"));
return columns;
}
http://git-wip-us.apache.org/repos/asf/wicket/blob/8441fdd6/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/repeater/data/sort/AjaxFallbackOrderByBorder.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/repeater/data/sort/AjaxFallbackOrderByBorder.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/repeater/data/sort/AjaxFallbackOrderByBorder.java
index a930ee3..f413084 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/repeater/data/sort/AjaxFallbackOrderByBorder.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/repeater/data/sort/AjaxFallbackOrderByBorder.java
@@ -25,7 +25,9 @@ import org.apache.wicket.markup.html.border.Border;
/**
* Ajaxified version of {@link OrderByBorder}
- *
+ *
+ * @param <S>
+ * the type of the sort property
* @see OrderByBorder
*
* @since 1.2.1
@@ -33,7 +35,7 @@ import org.apache.wicket.markup.html.border.Border;
* @author Igor Vaynberg (ivaynberg)
*
*/
-public abstract class AjaxFallbackOrderByBorder extends Border
+public abstract class AjaxFallbackOrderByBorder<S> extends Border
{
private static final long serialVersionUID = 1L;
@@ -41,13 +43,13 @@ public abstract class AjaxFallbackOrderByBorder extends Border
* Constructor
*
* @param id
- * @param property
+ * @param sortProperty
* @param stateLocator
*/
- public AjaxFallbackOrderByBorder(final String id, final String property,
- final ISortStateLocator stateLocator)
+ public AjaxFallbackOrderByBorder(final String id, final S sortProperty,
+ final ISortStateLocator<S> stateLocator)
{
- this(id, property, stateLocator, AjaxFallbackOrderByLink.DefaultCssProvider.getInstance(),
+ this(id, sortProperty, stateLocator, AjaxFallbackOrderByLink.DefaultCssProvider.getInstance(),
null);
}
@@ -56,14 +58,14 @@ public abstract class AjaxFallbackOrderByBorder extends Border
* Constructor
*
* @param id
- * @param property
+ * @param sortProperty
* @param stateLocator
* @param cssProvider
*/
- public AjaxFallbackOrderByBorder(final String id, final String property,
- final ISortStateLocator stateLocator, final AjaxFallbackOrderByLink.ICssProvider cssProvider)
+ public AjaxFallbackOrderByBorder(final String id, final S sortProperty,
+ final ISortStateLocator<S> stateLocator, final AjaxFallbackOrderByLink.ICssProvider<String> cssProvider)
{
- this(id, property, stateLocator, cssProvider, null);
+ this(id, sortProperty, stateLocator, cssProvider, null);
}
@@ -71,14 +73,14 @@ public abstract class AjaxFallbackOrderByBorder extends Border
* Constructor
*
* @param id
- * @param property
+ * @param sortProperty
* @param stateLocator
* @param ajaxCallListener
*/
- public AjaxFallbackOrderByBorder(final String id, final String property,
- final ISortStateLocator stateLocator, final IAjaxCallListener ajaxCallListener)
+ public AjaxFallbackOrderByBorder(final String id, final S sortProperty,
+ final ISortStateLocator<S> stateLocator, final IAjaxCallListener ajaxCallListener)
{
- this(id, property, stateLocator, AjaxFallbackOrderByLink.DefaultCssProvider.getInstance(),
+ this(id, sortProperty, stateLocator, AjaxFallbackOrderByLink.DefaultCssProvider.getInstance(),
ajaxCallListener);
}
@@ -87,17 +89,17 @@ public abstract class AjaxFallbackOrderByBorder extends Border
* Constructor
*
* @param id
- * @param property
+ * @param sortProperty
* @param stateLocator
* @param cssProvider
* @param ajaxCallListener
*/
- public AjaxFallbackOrderByBorder(final String id, final String property,
- final ISortStateLocator stateLocator,
- final AjaxFallbackOrderByLink.ICssProvider cssProvider, final IAjaxCallListener ajaxCallListener)
+ public AjaxFallbackOrderByBorder(final String id, final S sortProperty,
+ final ISortStateLocator<S> stateLocator,
+ final AjaxFallbackOrderByLink.ICssProvider<String> cssProvider, final IAjaxCallListener ajaxCallListener)
{
super(id);
- AjaxFallbackOrderByLink link = new AjaxFallbackOrderByLink("orderByLink", property,
+ AjaxFallbackOrderByLink<S> link = new AjaxFallbackOrderByLink<S>("orderByLink", sortProperty,
stateLocator, cssProvider, ajaxCallListener)
{
http://git-wip-us.apache.org/repos/asf/wicket/blob/8441fdd6/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/repeater/data/sort/AjaxFallbackOrderByLink.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/repeater/data/sort/AjaxFallbackOrderByLink.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/repeater/data/sort/AjaxFallbackOrderByLink.java
index a45ba94..833d7f8 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/repeater/data/sort/AjaxFallbackOrderByLink.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/repeater/data/sort/AjaxFallbackOrderByLink.java
@@ -29,7 +29,9 @@ import org.apache.wicket.extensions.markup.html.repeater.data.sort.OrderByLink;
/**
* Ajaxified {@link OrderByLink}
- *
+ *
+ * @param <S>
+ * the type of the sort property
* @see OrderByLink
*
* @since 1.2.1
@@ -37,7 +39,7 @@ import org.apache.wicket.extensions.markup.html.repeater.data.sort.OrderByLink;
* @author Igor Vaynberg (ivaynberg)
*
*/
-public abstract class AjaxFallbackOrderByLink extends OrderByLink implements IAjaxLink
+public abstract class AjaxFallbackOrderByLink<S> extends OrderByLink<S> implements IAjaxLink
{
/**
*
@@ -50,57 +52,57 @@ public abstract class AjaxFallbackOrderByLink extends OrderByLink implements IAj
* Constructor
*
* @param id
- * @param property
+ * @param sortProperty
* @param stateLocator
* @param cssProvider
*/
- public AjaxFallbackOrderByLink(final String id, final String property,
- final ISortStateLocator stateLocator, final ICssProvider cssProvider)
+ public AjaxFallbackOrderByLink(final String id, final S sortProperty,
+ final ISortStateLocator<S> stateLocator, final ICssProvider<String> cssProvider)
{
- this(id, property, stateLocator, cssProvider, null);
+ this(id, sortProperty, stateLocator, cssProvider, null);
}
/**
* Constructor
*
* @param id
- * @param property
+ * @param sortProperty
* @param stateLocator
*/
- public AjaxFallbackOrderByLink(final String id, final String property,
- final ISortStateLocator stateLocator)
+ public AjaxFallbackOrderByLink(final String id, final S sortProperty,
+ final ISortStateLocator<S> stateLocator)
{
- this(id, property, stateLocator, DefaultCssProvider.getInstance(), null);
+ this(id, sortProperty, stateLocator, DefaultCssProvider.getInstance(), null);
}
/**
* Constructor
*
* @param id
- * @param property
+ * @param sortProperty
* @param stateLocator
* @param ajaxCallListener
*/
- public AjaxFallbackOrderByLink(final String id, final String property,
- final ISortStateLocator stateLocator, final IAjaxCallListener ajaxCallListener)
+ public AjaxFallbackOrderByLink(final String id, final S sortProperty,
+ final ISortStateLocator<S> stateLocator, final IAjaxCallListener ajaxCallListener)
{
- this(id, property, stateLocator, DefaultCssProvider.getInstance(), ajaxCallListener);
+ this(id, sortProperty, stateLocator, DefaultCssProvider.getInstance(), ajaxCallListener);
}
/**
* Constructor
*
* @param id
- * @param property
+ * @param sortProperty
* @param stateLocator
* @param cssProvider
* @param ajaxCallListener
*/
- public AjaxFallbackOrderByLink(final String id, final String property,
- final ISortStateLocator stateLocator, final ICssProvider cssProvider,
+ public AjaxFallbackOrderByLink(final String id, final S sortProperty,
+ final ISortStateLocator<S> stateLocator, final ICssProvider<String> cssProvider,
final IAjaxCallListener ajaxCallListener)
{
- super(id, property, stateLocator, cssProvider);
+ super(id, sortProperty, stateLocator, cssProvider);
this.ajaxCallListener = ajaxCallListener;
}
http://git-wip-us.apache.org/repos/asf/wicket/blob/8441fdd6/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/repeater/data/table/AjaxFallbackDefaultDataTable.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/repeater/data/table/AjaxFallbackDefaultDataTable.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/repeater/data/table/AjaxFallbackDefaultDataTable.java
index c572483..b4877b1 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/repeater/data/table/AjaxFallbackDefaultDataTable.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/repeater/data/table/AjaxFallbackDefaultDataTable.java
@@ -49,7 +49,7 @@ import org.apache.wicket.model.IModel;
* the type of the sorting parameter
*
*/
-public class AjaxFallbackDefaultDataTable<T, S> extends DataTable<T>
+public class AjaxFallbackDefaultDataTable<T, S> extends DataTable<T, S>
{
private static final long serialVersionUID = 1L;
@@ -65,7 +65,7 @@ public class AjaxFallbackDefaultDataTable<T, S> extends DataTable<T>
* @param rowsPerPage
* number of rows per page
*/
- public AjaxFallbackDefaultDataTable(final String id, final List<IColumn<T>> columns,
+ public AjaxFallbackDefaultDataTable(final String id, final List<IColumn<T, S>> columns,
final ISortableDataProvider<T, S> dataProvider, final int rowsPerPage)
{
super(id, columns, dataProvider, rowsPerPage);
http://git-wip-us.apache.org/repos/asf/wicket/blob/8441fdd6/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/repeater/data/table/AjaxFallbackHeadersToolbar.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/repeater/data/table/AjaxFallbackHeadersToolbar.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/repeater/data/table/AjaxFallbackHeadersToolbar.java
index 4795c1c..b02d553 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/repeater/data/table/AjaxFallbackHeadersToolbar.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/repeater/data/table/AjaxFallbackHeadersToolbar.java
@@ -27,13 +27,15 @@ import org.apache.wicket.markup.html.WebMarkupContainer;
/**
* Ajaxified {@link HeadersToolbar}
- *
+ *
+ * @param <S>
+ * the type of the sort property
* @see HeadersToolbar
*
* @author ivaynberg
*
*/
-public class AjaxFallbackHeadersToolbar extends HeadersToolbar
+public class AjaxFallbackHeadersToolbar<S> extends HeadersToolbar<S>
{
private static final long serialVersionUID = 1L;
@@ -43,7 +45,7 @@ public class AjaxFallbackHeadersToolbar extends HeadersToolbar
* @param table
* @param stateLocator
*/
- public AjaxFallbackHeadersToolbar(final DataTable<?> table, final ISortStateLocator stateLocator)
+ public AjaxFallbackHeadersToolbar(final DataTable<?, S> table, final ISortStateLocator<S> stateLocator)
{
super(table, stateLocator);
table.setOutputMarkupId(true);
@@ -53,10 +55,10 @@ public class AjaxFallbackHeadersToolbar extends HeadersToolbar
* {@inheritDoc}
*/
@Override
- protected WebMarkupContainer newSortableHeader(final String borderId, final String property,
- final ISortStateLocator locator)
+ protected WebMarkupContainer newSortableHeader(final String borderId, final S property,
+ final ISortStateLocator<S> locator)
{
- return new AjaxFallbackOrderByBorder(borderId, property, locator, getAjaxCallListener())
+ return new AjaxFallbackOrderByBorder<S>(borderId, property, locator, getAjaxCallListener())
{
private static final long serialVersionUID = 1L;
http://git-wip-us.apache.org/repos/asf/wicket/blob/8441fdd6/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/repeater/data/table/AjaxNavigationToolbar.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/repeater/data/table/AjaxNavigationToolbar.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/repeater/data/table/AjaxNavigationToolbar.java
index 0690e7d..2928250 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/repeater/data/table/AjaxNavigationToolbar.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/repeater/data/table/AjaxNavigationToolbar.java
@@ -41,7 +41,7 @@ public class AjaxNavigationToolbar extends NavigationToolbar
* @param table
* data table this toolbar will be attached to
*/
- public AjaxNavigationToolbar(final DataTable<?> table)
+ public AjaxNavigationToolbar(final DataTable<?, ?> table)
{
super(table);
}
@@ -56,7 +56,7 @@ public class AjaxNavigationToolbar extends NavigationToolbar
* @return paging navigator that will be used to navigate the data table
*/
@Override
- protected PagingNavigator newPagingNavigator(final String navigatorId, final DataTable<?> table)
+ protected PagingNavigator newPagingNavigator(final String navigatorId, final DataTable<?, ?> table)
{
return new AjaxPagingNavigator(navigatorId, table)
{
http://git-wip-us.apache.org/repos/asf/wicket/blob/8441fdd6/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/sort/ISortState.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/sort/ISortState.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/sort/ISortState.java
index 3f7b701..0bf868e 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/sort/ISortState.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/sort/ISortState.java
@@ -22,11 +22,11 @@ import org.apache.wicket.util.io.IClusterable;
* Interface used by OrderByLink to interact with any object that keeps track of sorting state
*
* @author Igor Vaynberg (ivaynberg)
- * @param <T>
+ * @param <S>
* the type of the sort property
*
*/
-public interface ISortState<T> extends IClusterable
+public interface ISortState<S> extends IClusterable
{
/**
* Sets sort order of the property
@@ -36,7 +36,7 @@ public interface ISortState<T> extends IClusterable
* @param order
* sort order
*/
- public void setPropertySortOrder(T property, SortOrder order);
+ public void setPropertySortOrder(S property, SortOrder order);
/**
* Gets the sort order of a property
@@ -45,6 +45,6 @@ public interface ISortState<T> extends IClusterable
* sort property to be checked
* @return sort order
*/
- public SortOrder getPropertySortOrder(T property);
+ public SortOrder getPropertySortOrder(S property);
}
http://git-wip-us.apache.org/repos/asf/wicket/blob/8441fdd6/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/sort/OrderByBorder.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/sort/OrderByBorder.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/sort/OrderByBorder.java
index 45953ae..5f645e5 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/sort/OrderByBorder.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/sort/OrderByBorder.java
@@ -26,12 +26,13 @@ import org.apache.wicket.markup.html.border.Border;
* For example:
*
* <th wicket:id="order-by-border">Heading</th>
- *
- *
+ *
+ * @param <S>
+ * the type of the sorting parameter
* @author Igor Vaynberg ( ivaynberg )
*
*/
-public class OrderByBorder extends Border
+public class OrderByBorder<S> extends Border
{
private static final long serialVersionUID = 1L;
@@ -49,8 +50,8 @@ public class OrderByBorder extends Border
* see
* {@link OrderByLink#OrderByLink(String, String, ISortStateLocator, org.apache.wicket.extensions.markup.html.repeater.data.sort.OrderByLink.ICssProvider) }
*/
- public OrderByBorder(final String id, final String property,
- final ISortStateLocator stateLocator, final OrderByLink.ICssProvider cssProvider)
+ public OrderByBorder(final String id, final S property,
+ final ISortStateLocator<S> stateLocator, final OrderByLink.ICssProvider<String> cssProvider)
{
super(id);
@@ -71,8 +72,8 @@ public class OrderByBorder extends Border
* sort state locator
* @return link
*/
- protected OrderByLink newOrderByLink(final String id, final String property,
- final ISortStateLocator stateLocator)
+ protected OrderByLink newOrderByLink(final String id, final S property,
+ final ISortStateLocator<S> stateLocator)
{
return new OrderByLink(id, property, stateLocator,
OrderByLink.VoidCssProvider.getInstance())
@@ -103,8 +104,8 @@ public class OrderByBorder extends Border
* @param stateLocator
* see {@link OrderByLink#OrderByLink(String, String, ISortStateLocator)}
*/
- public OrderByBorder(final String id, final String property,
- final ISortStateLocator stateLocator)
+ public OrderByBorder(final String id, final S property,
+ final ISortStateLocator<S> stateLocator)
{
this(id, property, stateLocator, OrderByLink.DefaultCssProvider.getInstance());
}
http://git-wip-us.apache.org/repos/asf/wicket/blob/8441fdd6/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/sort/OrderByLink.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/sort/OrderByLink.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/sort/OrderByLink.java
index 26c0883..13e3a38 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/sort/OrderByLink.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/sort/OrderByLink.java
@@ -27,36 +27,38 @@ import org.apache.wicket.util.string.Strings;
/**
* A component that represents a sort header. When the link is clicked it will toggle the state of a
* sortable property within the sort state object.
- *
+ *
+ * @param <S>
+ * the type of the sorting parameter
* @author Phil Kulak
* @author Igor Vaynberg (ivaynberg)
*/
-public class OrderByLink extends Link<Void>
+public class OrderByLink<S> extends Link<Void>
{
private static final long serialVersionUID = 1L;
/** sortable property */
- private final String property;
+ private final S property;
/** locator for sort state object */
- private final ISortStateLocator stateLocator;
+ private final ISortStateLocator<S> stateLocator;
/**
* Constructor.
*
* @param id
* the component id of the link
- * @param property
- * the name of the sortable property this link represents. this value will be used as
+ * @param sortProperty
+ * the name of the sortable sortProperty this link represents. this value will be used as
* parameter for sort state object methods. sort state object will be located via the
* stateLocator argument.
* @param stateLocator
* locator used to locate sort state object that this will use to read/write state of
* sorted properties
*/
- public OrderByLink(final String id, final String property, final ISortStateLocator stateLocator)
+ public OrderByLink(final String id, final S sortProperty, final ISortStateLocator<S> stateLocator)
{
- this(id, property, stateLocator, DefaultCssProvider.getInstance());
+ this(id, sortProperty, stateLocator, DefaultCssProvider.getInstance());
}
/**
@@ -77,8 +79,8 @@ public class OrderByLink extends Link<Void>
* @see OrderByLink.ICssProvider
*
*/
- public OrderByLink(final String id, final String property,
- final ISortStateLocator stateLocator, final ICssProvider<String> cssProvider)
+ public OrderByLink(final String id, final S property, final ISortStateLocator<S> stateLocator,
+ final ICssProvider<String> cssProvider)
{
super(id);
@@ -113,7 +115,7 @@ public class OrderByLink extends Link<Void>
*
* @return this
*/
- public final OrderByLink sort()
+ public final OrderByLink<S> sort()
{
if (isVersioned())
{
@@ -121,7 +123,7 @@ public class OrderByLink extends Link<Void>
addStateChange();
}
- ISortState<String> state = stateLocator.getSortState();
+ ISortState<S> state = stateLocator.getSortState();
// get current sort order
SortOrder order = state.getPropertySortOrder(property);
@@ -158,11 +160,11 @@ public class OrderByLink extends Link<Void>
* @author Igor Vaynberg ( ivaynberg )
*
*/
- public static class CssModifier extends Behavior
+ public static class CssModifier<S> extends Behavior
{
private static final long serialVersionUID = 1L;
- private final OrderByLink link;
- private final ICssProvider<String> provider;
+ private final OrderByLink<S> link;
+ private final ICssProvider<S> provider;
/**
* @param link
@@ -170,7 +172,7 @@ public class OrderByLink extends Link<Void>
* @param provider
* implementation of ICssProvider
*/
- public CssModifier(final OrderByLink link, final ICssProvider<String> provider)
+ public CssModifier(final OrderByLink<S> link, final ICssProvider<S> provider)
{
this.link = link;
this.provider = provider;
@@ -181,7 +183,7 @@ public class OrderByLink extends Link<Void>
{
super.onComponentTag(component, tag);
- final ISortState<String> sortState = link.stateLocator.getSortState();
+ final ISortState<S> sortState = link.stateLocator.getSortState();
String cssClass = provider.getClassAttributeValue(sortState, link.property);
if (!Strings.isEmpty(cssClass))
{
@@ -197,20 +199,20 @@ public class OrderByLink extends Link<Void>
* value is null class attribute will not be added
*
* @author igor
- * @param <T>
+ * @param <S>
* the type of the sort property
*/
- public static interface ICssProvider<T> extends IClusterable
+ public static interface ICssProvider<S> extends IClusterable
{
/**
* @param state
* current sort state
- * @param property
- * sort property represented by the {@link OrderByLink}
- * @return the value of the "class" attribute for the given sort state/sort property
+ * @param sortProperty
+ * sort sortProperty represented by the {@link OrderByLink}
+ * @return the value of the "class" attribute for the given sort state/sort sortProperty
* combination
*/
- public String getClassAttributeValue(ISortState<T> state, String property);
+ public String getClassAttributeValue(ISortState<S> state, S sortProperty);
}
@@ -246,12 +248,11 @@ public class OrderByLink extends Link<Void>
}
/**
- * @see org.apache.wicket.extensions.markup.html.repeater.data.sort.OrderByLink.ICssProvider#getClassAttributeValue(org.apache.wicket.extensions.markup.html.repeater.data.sort.ISortState,
- * java.lang.String)
+ * @see org.apache.wicket.extensions.markup.html.repeater.data.sort.OrderByLink.ICssProvider#getClassAttributeValue(ISortState, Object)
*/
- public String getClassAttributeValue(final ISortState<String> state, final String property)
+ public String getClassAttributeValue(final ISortState<String> state, final String sortProperty)
{
- SortOrder dir = state.getPropertySortOrder(property);
+ SortOrder dir = state.getPropertySortOrder(sortProperty);
if (dir == SortOrder.ASCENDING)
{
http://git-wip-us.apache.org/repos/asf/wicket/blob/8441fdd6/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/AbstractColumn.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/AbstractColumn.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/AbstractColumn.java
index 0ede247..6426769 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/AbstractColumn.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/AbstractColumn.java
@@ -25,12 +25,14 @@ import org.apache.wicket.model.IModel;
*
* @author Igor Vaynberg ( ivaynberg )
* @param <T>
+ * @param <S>
+ * the type of the sort property
*/
-public abstract class AbstractColumn<T> implements IStyledColumn<T>
+public abstract class AbstractColumn<T, S> implements IStyledColumn<T, S>
{
private static final long serialVersionUID = 1L;
private IModel<String> displayModel;
- private String sortProperty;
+ private S sortProperty;
/**
* @param displayModel
@@ -38,7 +40,7 @@ public abstract class AbstractColumn<T> implements IStyledColumn<T>
* @param sortProperty
* sort property this column represents
*/
- public AbstractColumn(final IModel<String> displayModel, final String sortProperty)
+ public AbstractColumn(final IModel<String> displayModel, final S sortProperty)
{
this.displayModel = displayModel;
this.sortProperty = sortProperty;
@@ -64,7 +66,7 @@ public abstract class AbstractColumn<T> implements IStyledColumn<T>
/**
* @see org.apache.wicket.extensions.markup.html.repeater.data.table.IColumn#getSortProperty()
*/
- public String getSortProperty()
+ public S getSortProperty()
{
return sortProperty;
}
http://git-wip-us.apache.org/repos/asf/wicket/blob/8441fdd6/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/AbstractToolbar.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/AbstractToolbar.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/AbstractToolbar.java
index a9d0a49..b3ca7cf 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/AbstractToolbar.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/AbstractToolbar.java
@@ -33,7 +33,7 @@ public abstract class AbstractToolbar extends Panel
private static int counter = 0;
- private final DataTable<?> table;
+ private final DataTable<?, ?> table;
/**
* Constructor
@@ -43,7 +43,7 @@ public abstract class AbstractToolbar extends Panel
* @param table
* data table this toolbar will be attached to
*/
- public AbstractToolbar(final IModel<?> model, final DataTable<?> table)
+ public AbstractToolbar(final IModel<?> model, final DataTable<?, ?> table)
{
super("" + (counter++), model);
this.table = table;
@@ -55,7 +55,7 @@ public abstract class AbstractToolbar extends Panel
* @param table
* data table this toolbar will be attached to
*/
- public AbstractToolbar(final DataTable<?> table)
+ public AbstractToolbar(final DataTable<?, ?> table)
{
this(null, table);
}
@@ -63,7 +63,7 @@ public abstract class AbstractToolbar extends Panel
/**
* @return DataTable this toolbar is attached to
*/
- protected DataTable<?> getTable()
+ protected DataTable<?, ?> getTable()
{
return table;
}
http://git-wip-us.apache.org/repos/asf/wicket/blob/8441fdd6/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/DataTable.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/DataTable.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/DataTable.java
index 8843090..154eb99 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/DataTable.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/DataTable.java
@@ -73,9 +73,11 @@ import org.apache.wicket.util.visit.IVisitor;
*
* @param <T>
* The model object type
+ * @param <S>
+ * the type of the sorting parameter
*
*/
-public class DataTable<T> extends Panel implements IPageableItems
+public class DataTable<T, S> extends Panel implements IPageableItems
{
static abstract class CssAttributeBehavior extends Behavior
{
@@ -103,7 +105,7 @@ public class DataTable<T> extends Panel implements IPageableItems
private final WebMarkupContainer body;
- private final List<IColumn<T>> columns;
+ private final List<IColumn<T, S>> columns;
private final ToolbarsContainer topToolbars;
@@ -123,7 +125,7 @@ public class DataTable<T> extends Panel implements IPageableItems
* @param rowsPerPage
* number of rows per page
*/
- public DataTable(final String id, final List<IColumn<T>> columns,
+ public DataTable(final String id, final List<IColumn<T, S>> columns,
final IDataProvider<T> dataProvider, final long rowsPerPage)
{
super(id);
@@ -144,7 +146,7 @@ public class DataTable<T> extends Panel implements IPageableItems
protected Item newCellItem(final String id, final int index, final IModel model)
{
Item item = DataTable.this.newCellItem(id, index, model);
- final IColumn<T> column = DataTable.this.columns.get(index);
+ final IColumn<T, S> column = DataTable.this.columns.get(index);
if (column instanceof IStyledColumn)
{
item.add(new CssAttributeBehavior()
@@ -154,7 +156,7 @@ public class DataTable<T> extends Panel implements IPageableItems
@Override
protected String getCssClass()
{
- return ((IStyledColumn<?>)column).getCssClass();
+ return ((IStyledColumn<T, S>)column).getCssClass();
}
});
}
@@ -246,7 +248,7 @@ public class DataTable<T> extends Panel implements IPageableItems
/**
* @return array of column objects this table displays
*/
- public final List<IColumn<T>> getColumns()
+ public final List<IColumn<T, S>> getColumns()
{
return columns;
}
@@ -284,7 +286,7 @@ public class DataTable<T> extends Panel implements IPageableItems
}
/**
- * @see org.apache.wicket.markup.html.navigation.paging.IPageable#setCurrentPage(int)
+ * @see org.apache.wicket.markup.html.navigation.paging.IPageable#setCurrentPage(long)
*/
public final void setCurrentPage(final long page)
{
@@ -303,7 +305,7 @@ public class DataTable<T> extends Panel implements IPageableItems
* item reuse strategy
* @return this for chaining
*/
- public final DataTable<T> setItemReuseStrategy(final IItemReuseStrategy strategy)
+ public final DataTable<T, S> setItemReuseStrategy(final IItemReuseStrategy strategy)
{
datagrid.setItemReuseStrategy(strategy);
return this;
@@ -350,10 +352,10 @@ public class DataTable<T> extends Panel implements IPageableItems
*
* @return DataItem created DataItem
*/
- protected Item<IColumn<T>> newCellItem(final String id, final int index,
- final IModel<IColumn<T>> model)
+ protected Item<IColumn<T, S>> newCellItem(final String id, final int index,
+ final IModel<IColumn<T, S>> model)
{
- return new Item<IColumn<T>>(id, index, model);
+ return new Item<IColumn<T, S>>(id, index, model);
}
/**
@@ -383,7 +385,7 @@ public class DataTable<T> extends Panel implements IPageableItems
{
super.onDetach();
- for (IColumn<?> column : columns)
+ for (IColumn<T, S> column : columns)
{
column.detach();
}
@@ -485,7 +487,7 @@ public class DataTable<T> extends Panel implements IPageableItems
}
@Override
- protected IModel<?> initModel()
+ protected IModel<String> initModel()
{
// don't try to find the model in the parent
return null;
http://git-wip-us.apache.org/repos/asf/wicket/blob/8441fdd6/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/DefaultDataTable.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/DefaultDataTable.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/DefaultDataTable.java
index 6f60000..5b185cf 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/DefaultDataTable.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/DefaultDataTable.java
@@ -41,7 +41,7 @@ import org.apache.wicket.model.IModel;
* @param <S>
* the type of the sorting parameter
*/
-public class DefaultDataTable<T, S> extends DataTable<T>
+public class DefaultDataTable<T, S> extends DataTable<T, S>
{
private static final long serialVersionUID = 1L;
@@ -57,7 +57,7 @@ public class DefaultDataTable<T, S> extends DataTable<T>
* @param rowsPerPage
* number of rows per page
*/
- public DefaultDataTable(final String id, final List<IColumn<T>> columns,
+ public DefaultDataTable(final String id, final List<IColumn<T, S>> columns,
final ISortableDataProvider<T, S> dataProvider, final int rowsPerPage)
{
super(id, columns, dataProvider, rowsPerPage);
http://git-wip-us.apache.org/repos/asf/wicket/blob/8441fdd6/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/HeaderlessColumn.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/HeaderlessColumn.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/HeaderlessColumn.java
index d239311..6790435 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/HeaderlessColumn.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/HeaderlessColumn.java
@@ -24,8 +24,10 @@ import org.apache.wicket.model.Model;
*
* @author Igor Vaynberg
* @param <T>
+ * @param <S>
+ * the type of the sort property
*/
-public abstract class HeaderlessColumn<T> extends AbstractColumn<T>
+public abstract class HeaderlessColumn<T, S> extends AbstractColumn<T, S>
{
private static final long serialVersionUID = 1L;
http://git-wip-us.apache.org/repos/asf/wicket/blob/8441fdd6/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/HeadersToolbar.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/HeadersToolbar.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/HeadersToolbar.java
index 2602c4f..118df15 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/HeadersToolbar.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/HeadersToolbar.java
@@ -29,13 +29,15 @@ import org.apache.wicket.markup.repeater.RepeatingView;
/**
* Toolbars that displays column headers. If the column is sortable a sortable header will be
* displayed.
- *
+ *
+ * @param <S>
+ * the type of the sorting parameter
* @see DefaultDataTable
*
* @author Igor Vaynberg (ivaynberg)
*
*/
-public class HeadersToolbar extends AbstractToolbar
+public class HeadersToolbar<S> extends AbstractToolbar
{
private static final long serialVersionUID = 1L;
@@ -49,15 +51,15 @@ public class HeadersToolbar extends AbstractToolbar
* @param stateLocator
* locator for the ISortState implementation used by sortable headers
*/
- public <T> HeadersToolbar(final DataTable<T> table, final ISortStateLocator stateLocator)
+ public <T> HeadersToolbar(final DataTable<T, S> table, final ISortStateLocator<S> stateLocator)
{
super(table);
RepeatingView headers = new RepeatingView("headers");
add(headers);
- final List<IColumn<T>> columns = table.getColumns();
- for (final IColumn<T> column : columns)
+ final List<IColumn<T, S>> columns = table.getColumns();
+ for (final IColumn<T, S> column : columns)
{
AbstractItem item = new AbstractItem(headers.newChildId());
headers.add(item);
@@ -81,7 +83,7 @@ public class HeadersToolbar extends AbstractToolbar
@Override
protected String getCssClass()
{
- return ((IStyledColumn<?>)column).getCssClass();
+ return ((IStyledColumn<?, S>)column).getCssClass();
}
};
@@ -106,10 +108,10 @@ public class HeadersToolbar extends AbstractToolbar
* sort state locator
* @return created header component
*/
- protected WebMarkupContainer newSortableHeader(final String headerId, final String property,
- final ISortStateLocator locator)
+ protected WebMarkupContainer newSortableHeader(final String headerId, final S property,
+ final ISortStateLocator<S> locator)
{
- return new OrderByBorder(headerId, property, locator)
+ return new OrderByBorder<S>(headerId, property, locator)
{
private static final long serialVersionUID = 1L;
http://git-wip-us.apache.org/repos/asf/wicket/blob/8441fdd6/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/IColumn.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/IColumn.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/IColumn.java
index 62f1d3b..746012f 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/IColumn.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/IColumn.java
@@ -25,8 +25,10 @@ import org.apache.wicket.extensions.markup.html.repeater.data.grid.ICellPopulato
*
* @author Igor Vaynberg ( ivaynberg )
* @param <T>
+ * @param <S>
+ * the type of the sorting parameter
*/
-public interface IColumn<T> extends ICellPopulator<T>
+public interface IColumn<T, S> extends ICellPopulator<T>
{
/**
* Returns the component that will be used as the header for the column.
@@ -44,12 +46,12 @@ public interface IColumn<T> extends ICellPopulator<T>
* Returns the name of the property that this header sorts. If null is returned the header will
* be unsortable.
*
- * @return a string representing the sort property
+ * @return the sort property
*/
- String getSortProperty();
+ S getSortProperty();
/**
- * Returns true if this header should be a sortable header
+ * Returns true if the header of the column should be sortable
*
* @return true if header should be sortable
*/
http://git-wip-us.apache.org/repos/asf/wicket/blob/8441fdd6/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/IStyledColumn.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/IStyledColumn.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/IStyledColumn.java
index df26b76..ed7c124 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/IStyledColumn.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/IStyledColumn.java
@@ -22,8 +22,10 @@ package org.apache.wicket.extensions.markup.html.repeater.data.table;
*
* @author Matej Knopp
* @param <T>
+ * @param <S>
+ * the type of the sorting parameter
*/
-public interface IStyledColumn<T> extends IColumn<T>
+public interface IStyledColumn<T, S> extends IColumn<T, S>
{
/**
* Returns the css class for this column.
http://git-wip-us.apache.org/repos/asf/wicket/blob/8441fdd6/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/NavigationToolbar.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/NavigationToolbar.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/NavigationToolbar.java
index 07d4a9d..6b0101d 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/NavigationToolbar.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/NavigationToolbar.java
@@ -37,7 +37,7 @@ public class NavigationToolbar extends AbstractToolbar
* @param table
* data table this toolbar will be attached to
*/
- public NavigationToolbar(final DataTable<?> table)
+ public NavigationToolbar(final DataTable<?, ?> table)
{
super(table);
@@ -58,7 +58,7 @@ public class NavigationToolbar extends AbstractToolbar
* dataview used by datatable
* @return paging navigator that will be used to navigate the data table
*/
- protected PagingNavigator newPagingNavigator(final String navigatorId, final DataTable<?> table)
+ protected PagingNavigator newPagingNavigator(final String navigatorId, final DataTable<?, ?> table)
{
return new PagingNavigator(navigatorId, table);
}
@@ -73,7 +73,7 @@ public class NavigationToolbar extends AbstractToolbar
* @return navigator label that will be used to navigate the data table
*
*/
- protected WebComponent newNavigatorLabel(final String navigatorId, final DataTable<?> table)
+ protected WebComponent newNavigatorLabel(final String navigatorId, final DataTable<?, ?> table)
{
return new NavigatorLabel(navigatorId, table);
}
http://git-wip-us.apache.org/repos/asf/wicket/blob/8441fdd6/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/NoRecordsToolbar.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/NoRecordsToolbar.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/NoRecordsToolbar.java
index 8f76265..c9f0ec7 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/NoRecordsToolbar.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/NoRecordsToolbar.java
@@ -46,7 +46,7 @@ public class NoRecordsToolbar extends AbstractToolbar
* @param table
* data table this toolbar will be attached to
*/
- public NoRecordsToolbar(final DataTable<?> table)
+ public NoRecordsToolbar(final DataTable<?, ?> table)
{
this(table, DEFAULT_MESSAGE_MODEL);
}
@@ -57,7 +57,7 @@ public class NoRecordsToolbar extends AbstractToolbar
* @param messageModel
* model that will be used to display the "no records found" message
*/
- public NoRecordsToolbar(final DataTable<?> table, final IModel<String> messageModel)
+ public NoRecordsToolbar(final DataTable<?, ?> table, final IModel<String> messageModel)
{
super(table);
http://git-wip-us.apache.org/repos/asf/wicket/blob/8441fdd6/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/PropertyColumn.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/PropertyColumn.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/PropertyColumn.java
index a717941..c314f2a 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/PropertyColumn.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/PropertyColumn.java
@@ -42,8 +42,10 @@ import org.apache.wicket.model.PropertyModel;
* @author Igor Vaynberg ( ivaynberg )
* @param <T>
* The Model object type
+ * @param <S>
+ * the type of the sort property
*/
-public class PropertyColumn<T> extends AbstractColumn<T>
+public class PropertyColumn<T, S> extends AbstractColumn<T, S>
{
private static final long serialVersionUID = 1L;
@@ -59,7 +61,7 @@ public class PropertyColumn<T> extends AbstractColumn<T>
* @param propertyExpression
* wicket property expression used by PropertyModel
*/
- public PropertyColumn(final IModel<String> displayModel, final String sortProperty,
+ public PropertyColumn(final IModel<String> displayModel, final S sortProperty,
final String propertyExpression)
{
super(displayModel, sortProperty);
http://git-wip-us.apache.org/repos/asf/wicket/blob/8441fdd6/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 6c82fde..c2b31c1 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
@@ -34,9 +34,10 @@ import org.apache.wicket.model.PropertyModel;
* The model object type
* @param <Y>
* The column model object type
- *
+ * @param <S>
+ * the type of the sort property
*/
-public class ChoiceFilteredPropertyColumn<T, Y> extends FilteredPropertyColumn<T>
+public class ChoiceFilteredPropertyColumn<T, Y, S> extends FilteredPropertyColumn<T, S>
{
private static final long serialVersionUID = 1L;
private final IModel<List<? extends Y>> filterChoices;
@@ -49,7 +50,7 @@ public class ChoiceFilteredPropertyColumn<T, Y> extends FilteredPropertyColumn<T
* collection choices used in the choice filter
*/
public ChoiceFilteredPropertyColumn(final IModel<String> displayModel,
- final String sortProperty, final String propertyExpression,
+ final S sortProperty, final String propertyExpression,
final IModel<List<? extends Y>> filterChoices)
{
super(displayModel, sortProperty, propertyExpression);
http://git-wip-us.apache.org/repos/asf/wicket/blob/8441fdd6/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/filter/FilterToolbar.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/filter/FilterToolbar.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/filter/FilterToolbar.java
index ed30b32..e7bada4 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/filter/FilterToolbar.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/filter/FilterToolbar.java
@@ -50,7 +50,7 @@ public class FilterToolbar extends AbstractToolbar
* type of filter state object
*
*/
- public <T> FilterToolbar(final DataTable<T> table, final FilterForm<T> form,
+ public <T, S> FilterToolbar(final DataTable<T, S> table, final FilterForm<T> form,
final IFilterStateLocator<T> stateLocator)
{
super(table);
@@ -70,8 +70,8 @@ public class FilterToolbar extends AbstractToolbar
filters.setRenderBodyOnly(true);
add(filters);
- List<IColumn<T>> cols = table.getColumns();
- for (IColumn<T> col : cols)
+ List<IColumn<T, S>> cols = table.getColumns();
+ for (IColumn<T, S> col : cols)
{
WebMarkupContainer item = new WebMarkupContainer(filters.newChildId());
item.setRenderBodyOnly(true);
@@ -80,7 +80,7 @@ public class FilterToolbar extends AbstractToolbar
if (col instanceof IFilteredColumn)
{
- IFilteredColumn<?> filteredCol = (IFilteredColumn<?>)col;
+ IFilteredColumn<T, S> filteredCol = (IFilteredColumn<T, S>)col;
filter = filteredCol.getFilter(FILTER_ID, form);
}
http://git-wip-us.apache.org/repos/asf/wicket/blob/8441fdd6/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/filter/FilteredAbstractColumn.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/filter/FilteredAbstractColumn.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/filter/FilteredAbstractColumn.java
index bfe5c48..a405407 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/filter/FilteredAbstractColumn.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/filter/FilteredAbstractColumn.java
@@ -25,11 +25,13 @@ import org.apache.wicket.model.IModel;
*
* @author Igor Vaynberg (ivaynberg)
* @param <T>
+ * @param <S>
+ * the type of the sort property
*
*/
-public abstract class FilteredAbstractColumn<T> extends AbstractColumn<T>
+public abstract class FilteredAbstractColumn<T, S> extends AbstractColumn<T, S>
implements
- IFilteredColumn<T>
+ IFilteredColumn<T, S>
{
private static final long serialVersionUID = 1L;
@@ -42,7 +44,7 @@ public abstract class FilteredAbstractColumn<T> extends AbstractColumn<T>
* @param sortProperty
* sort property this column represents
*/
- public FilteredAbstractColumn(final IModel<String> displayModel, final String sortProperty)
+ public FilteredAbstractColumn(final IModel<String> displayModel, final S sortProperty)
{
super(displayModel, sortProperty);
}
http://git-wip-us.apache.org/repos/asf/wicket/blob/8441fdd6/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/filter/FilteredPropertyColumn.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/filter/FilteredPropertyColumn.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/filter/FilteredPropertyColumn.java
index 7029b37..27bf28b 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/filter/FilteredPropertyColumn.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/filter/FilteredPropertyColumn.java
@@ -29,11 +29,13 @@ import org.apache.wicket.model.PropertyModel;
*
* @author Igor Vaynberg (ivaynberg)
* @param <T>
+ * @param <S>
+ * the type of the sort property
*
*/
-public abstract class FilteredPropertyColumn<T> extends PropertyColumn<T>
+public abstract class FilteredPropertyColumn<T, S> extends PropertyColumn<T, S>
implements
- IFilteredColumn<T>
+ IFilteredColumn<T, S>
{
private static final long serialVersionUID = 1L;
@@ -47,7 +49,7 @@ public abstract class FilteredPropertyColumn<T> extends PropertyColumn<T>
* @param propertyExpression
* wicket property expression for the column, see {@link PropertyModel} for details
*/
- public FilteredPropertyColumn(final IModel<String> displayModel, final String sortProperty,
+ public FilteredPropertyColumn(final IModel<String> displayModel, final S sortProperty,
final String propertyExpression)
{
super(displayModel, sortProperty, propertyExpression);
http://git-wip-us.apache.org/repos/asf/wicket/blob/8441fdd6/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/filter/IFilteredColumn.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/filter/IFilteredColumn.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/filter/IFilteredColumn.java
index 16f5619..4f5af51 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/filter/IFilteredColumn.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/filter/IFilteredColumn.java
@@ -28,9 +28,11 @@ import org.apache.wicket.extensions.markup.html.repeater.data.table.IColumn;
*
* @author Igor Vaynberg (ivaynberg)
* @param <T>
+ * @param <S>
+ * the type of the sorting parameter
*
*/
-public interface IFilteredColumn<T> extends IColumn<T>
+public interface IFilteredColumn<T, S> extends IColumn<T, S>
{
/**
* Returns the component used by user to filter the column. If null is returned, no filter will
http://git-wip-us.apache.org/repos/asf/wicket/blob/8441fdd6/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/filter/TextFilteredPropertyColumn.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/filter/TextFilteredPropertyColumn.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/filter/TextFilteredPropertyColumn.java
index 1d97442..1887f35 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/filter/TextFilteredPropertyColumn.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/filter/TextFilteredPropertyColumn.java
@@ -31,9 +31,11 @@ import org.apache.wicket.model.PropertyModel;
* The column's model object type
* @param <F>
* Filter's model object type
+ * @param <S>
+ * the type of the sort property
*
*/
-public class TextFilteredPropertyColumn<T, F> extends FilteredPropertyColumn<T>
+public class TextFilteredPropertyColumn<T, F, S> extends FilteredPropertyColumn<T, S>
{
private static final long serialVersionUID = 1L;
@@ -42,7 +44,7 @@ public class TextFilteredPropertyColumn<T, F> extends FilteredPropertyColumn<T>
* @param sortProperty
* @param propertyExpression
*/
- public TextFilteredPropertyColumn(final IModel<String> displayModel, final String sortProperty,
+ public TextFilteredPropertyColumn(final IModel<String> displayModel, final S sortProperty,
final String propertyExpression)
{
super(displayModel, sortProperty, propertyExpression);
http://git-wip-us.apache.org/repos/asf/wicket/blob/8441fdd6/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/DefaultTableTree.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/DefaultTableTree.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/DefaultTableTree.java
index 42299b1..151cbbd 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/DefaultTableTree.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/DefaultTableTree.java
@@ -41,7 +41,7 @@ import org.apache.wicket.model.IModel;
* the type of the sorting parameter
* @author svenmeier
*/
-public class DefaultTableTree<T, S> extends TableTree<T>
+public class DefaultTableTree<T, S> extends TableTree<T, S>
{
private static final long serialVersionUID = 1L;
@@ -58,7 +58,7 @@ public class DefaultTableTree<T, S> extends TableTree<T>
* @param rowsPerPage
* rows to show on each page
*/
- public DefaultTableTree(String id, List<IColumn<T>> columns, ISortableTreeProvider<T, S> provider,
+ public DefaultTableTree(String id, List<IColumn<T, S>> columns, ISortableTreeProvider<T, S> provider,
int rowsPerPage)
{
this(id, columns, provider, rowsPerPage, null);
@@ -78,7 +78,7 @@ public class DefaultTableTree<T, S> extends TableTree<T>
* @param state
* expansion state
*/
- public DefaultTableTree(String id, List<IColumn<T>> columns, ISortableTreeProvider<T, S> provider,
+ public DefaultTableTree(String id, List<IColumn<T, S>> columns, ISortableTreeProvider<T, S> provider,
int rowsPerPage, IModel<Set<T>> state)
{
super(id, columns, provider, rowsPerPage, state);
http://git-wip-us.apache.org/repos/asf/wicket/blob/8441fdd6/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/TableTree.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/TableTree.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/TableTree.java
index d37630e..8d7a87e 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/TableTree.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/TableTree.java
@@ -42,12 +42,14 @@ import org.apache.wicket.util.visit.IVisitor;
*
* @param <T>
* The model object type
+ * @param <S>
+ * the type of the sort property
*/
-public abstract class TableTree<T> extends AbstractTree<T>
+public abstract class TableTree<T, S> extends AbstractTree<T>
{
private static final long serialVersionUID = 1L;
- private final DataTable<T> table;
+ private final DataTable<T, S> table;
/**
* Constructor
@@ -61,7 +63,7 @@ public abstract class TableTree<T> extends AbstractTree<T>
* @param rowsPerPage
* number of rows per page
*/
- public TableTree(final String id, final List<IColumn<T>> columns,
+ public TableTree(final String id, final List<IColumn<T, S>> columns,
final ITreeProvider<T> dataProvider, final long rowsPerPage)
{
this(id, columns, dataProvider, rowsPerPage, null);
@@ -81,17 +83,17 @@ public abstract class TableTree<T> extends AbstractTree<T>
* @param state
* the expansion state
*/
- public TableTree(final String id, final List<IColumn<T>> columns,
+ public TableTree(final String id, final List<IColumn<T, S>> columns,
final ITreeProvider<T> provider, final long rowsPerPage, IModel<Set<T>> state)
{
super(id, provider, state);
Args.notEmpty(columns, "columns");
- for (IColumn<T> column : columns)
+ for (IColumn<T, S> column : columns)
{
- if (column instanceof ITreeColumn<?>)
+ if (column instanceof ITreeColumn<?, ?>)
{
- ((ITreeColumn<T>)column).setTree(this);
+ ((ITreeColumn<T, S>)column).setTree(this);
}
}
@@ -108,10 +110,10 @@ public abstract class TableTree<T> extends AbstractTree<T>
* @param rowsPerPage
* @return nested data table
*/
- protected DataTable<T> newDataTable(String id, List<IColumn<T>> columns,
+ protected DataTable<T, S> newDataTable(String id, List<IColumn<T, S>> columns,
IDataProvider<T> dataProvider, long rowsPerPage)
{
- return new DataTable<T>(id, columns, dataProvider, rowsPerPage)
+ return new DataTable<T, S>(id, columns, dataProvider, rowsPerPage)
{
private static final long serialVersionUID = 1L;
@@ -133,7 +135,7 @@ public abstract class TableTree<T> extends AbstractTree<T>
*
* @return the nested table
*/
- public DataTable<T> getTable()
+ public DataTable<T, S> getTable()
{
return table;
}
@@ -149,7 +151,7 @@ public abstract class TableTree<T> extends AbstractTree<T>
* @return this for chaining
*/
@Override
- public final TableTree<T> setItemReuseStrategy(final IItemReuseStrategy strategy)
+ public final TableTree<T, S> setItemReuseStrategy(final IItemReuseStrategy strategy)
{
table.setItemReuseStrategy(strategy);
http://git-wip-us.apache.org/repos/asf/wicket/blob/8441fdd6/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/table/AbstractTreeColumn.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/table/AbstractTreeColumn.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/table/AbstractTreeColumn.java
index fd1fa8b..87b6fdc 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/table/AbstractTreeColumn.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/table/AbstractTreeColumn.java
@@ -21,29 +21,33 @@ import org.apache.wicket.extensions.markup.html.repeater.tree.TableTree;
import org.apache.wicket.model.IModel;
/**
+ * @param <T>
+ * the type of the model object
+ * @param <S>
+ * the type of the sort property
* @author svenmeier
*/
-public abstract class AbstractTreeColumn<T> extends AbstractColumn<T> implements ITreeColumn<T>
+public abstract class AbstractTreeColumn<T, S> extends AbstractColumn<T, S> implements ITreeColumn<T, S>
{
- private TableTree<T> tree;
+ private TableTree<T, S> tree;
public AbstractTreeColumn(IModel<String> displayModel)
{
super(displayModel);
}
- public AbstractTreeColumn(IModel<String> displayModel, String sortProperty)
+ public AbstractTreeColumn(IModel<String> displayModel, S sortProperty)
{
super(displayModel, sortProperty);
}
- public void setTree(TableTree<T> tree)
+ public void setTree(TableTree<T, S> tree)
{
this.tree = tree;
}
- public TableTree<T> getTree()
+ public TableTree<T, S> getTree()
{
return tree;
}
http://git-wip-us.apache.org/repos/asf/wicket/blob/8441fdd6/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/table/ITreeColumn.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/table/ITreeColumn.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/table/ITreeColumn.java
index 856c93c..0f351d8 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/table/ITreeColumn.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/table/ITreeColumn.java
@@ -20,9 +20,13 @@ import org.apache.wicket.extensions.markup.html.repeater.data.table.IColumn;
import org.apache.wicket.extensions.markup.html.repeater.tree.TableTree;
/**
+ * @param <T>
+ * the type of the model object
+ * @param <S>
+ * the type of the sorting parameter
* @author svenmeier
*/
-public interface ITreeColumn<T> extends IColumn<T>
+public interface ITreeColumn<T, S> extends IColumn<T, S>
{
- public void setTree(TableTree<T> t);
+ public void setTree(TableTree<T, S> t);
}
http://git-wip-us.apache.org/repos/asf/wicket/blob/8441fdd6/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/table/TreeColumn.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/table/TreeColumn.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/table/TreeColumn.java
index 54cf5fa..83f16a8 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/table/TreeColumn.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/table/TreeColumn.java
@@ -27,8 +27,10 @@ import org.apache.wicket.model.IModel;
* @author svenmeier
* @param <T>
* node type
+ * @param <S>
+ * the type of the sort property
*/
-public class TreeColumn<T> extends AbstractTreeColumn<T>
+public class TreeColumn<T, S> extends AbstractTreeColumn<T, S>
{
private static final long serialVersionUID = 1L;
@@ -52,7 +54,7 @@ public class TreeColumn<T> extends AbstractTreeColumn<T>
* @param sortProperty
* sort property
*/
- public TreeColumn(IModel<String> displayModel, String sortProperty)
+ public TreeColumn(IModel<String> displayModel, S sortProperty)
{
super(displayModel, sortProperty);
}
http://git-wip-us.apache.org/repos/asf/wicket/blob/8441fdd6/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/tree/table/AbstractColumn.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/tree/table/AbstractColumn.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/tree/table/AbstractColumn.java
index 7f1b1be..8362d12 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/tree/table/AbstractColumn.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/tree/table/AbstractColumn.java
@@ -28,6 +28,7 @@ import org.apache.wicket.markup.html.basic.Label;
*
* @author Matej Knopp
*/
+@Deprecated
public abstract class AbstractColumn implements IColumn
{
private static final long serialVersionUID = 1L;
http://git-wip-us.apache.org/repos/asf/wicket/blob/8441fdd6/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/tree/table/IColumn.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/tree/table/IColumn.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/tree/table/IColumn.java
index 8d617b2..5650ddb 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/tree/table/IColumn.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/tree/table/IColumn.java
@@ -28,6 +28,7 @@ import org.apache.wicket.util.io.IClusterable;
*
* @author Matej Knopp
*/
+@Deprecated
public interface IColumn extends IClusterable
{
/**
http://git-wip-us.apache.org/repos/asf/wicket/blob/8441fdd6/wicket-extensions/src/test/java/org/apache/wicket/extensions/markup/html/repeater/data/table/DataTablePage.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/test/java/org/apache/wicket/extensions/markup/html/repeater/data/table/DataTablePage.java b/wicket-extensions/src/test/java/org/apache/wicket/extensions/markup/html/repeater/data/table/DataTablePage.java
index 09bf3d0..3e56a23 100644
--- a/wicket-extensions/src/test/java/org/apache/wicket/extensions/markup/html/repeater/data/table/DataTablePage.java
+++ b/wicket-extensions/src/test/java/org/apache/wicket/extensions/markup/html/repeater/data/table/DataTablePage.java
@@ -43,9 +43,9 @@ public class DataTablePage extends WebPage
*/
public DataTablePage()
{
- List<IColumn<?>> columns = new ArrayList<IColumn<?>>();
+ List<IColumn<Contact, String>> columns = new ArrayList<IColumn<Contact, String>>();
- columns.add(new AbstractColumn<Contact>(new Model<String>("Actions"))
+ columns.add(new AbstractColumn<Contact, String>(new Model<String>("Actions"))
{
private static final long serialVersionUID = 1L;
@@ -56,7 +56,7 @@ public class DataTablePage extends WebPage
}
});
- columns.add(new PropertyColumn<String>(new Model<String>("ID"), "id")
+ columns.add(new PropertyColumn<Contact, String>(new Model<String>("ID"), "id")
{
private static final long serialVersionUID = 1L;
@@ -67,10 +67,10 @@ public class DataTablePage extends WebPage
}
});
- columns.add(new PropertyColumn<String>(new Model<String>("First Name"), "firstName",
+ columns.add(new PropertyColumn<Contact, String>(new Model<String>("First Name"), "firstName",
"firstName"));
- columns.add(new PropertyColumn<String>(new Model<String>("Last Name"), "lastName",
+ columns.add(new PropertyColumn<Contact, String>(new Model<String>("Last Name"), "lastName",
"lastName")
{
private static final long serialVersionUID = 1L;
@@ -82,8 +82,8 @@ public class DataTablePage extends WebPage
}
});
- columns.add(new PropertyColumn<String>(new Model<String>("Home Phone"), "homePhone"));
- columns.add(new PropertyColumn<String>(new Model<String>("Cell Phone"), "cellPhone"));
+ columns.add(new PropertyColumn<Contact, String>(new Model<String>("Home Phone"), "homePhone"));
+ columns.add(new PropertyColumn<Contact, String>(new Model<String>("Cell Phone"), "cellPhone"));
@SuppressWarnings({ "rawtypes", "unchecked" })
DefaultDataTable defaultDataTable = new DefaultDataTable("table", columns,
http://git-wip-us.apache.org/repos/asf/wicket/blob/8441fdd6/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 dd5e591..2bb8bb5 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
@@ -205,10 +205,10 @@ public class DataTableTest extends Assert
}
};
- List<IColumn<Number>> columns = new ArrayList<IColumn<Number>>();
- columns.add(new PropertyColumn<Number>(Model.of("value"), "value"));
+ List<IColumn<Number, String>> columns = new ArrayList<IColumn<Number, String>>();
+ columns.add(new PropertyColumn<Number, String>(Model.of("value"), "value"));
- DataTable<Number> table = new DataTable<Number>("table", columns, provider, 10);
+ DataTable<Number, String> table = new DataTable<Number, String>("table", columns, provider, 10);
table.addBottomToolbar(new NoRecordsToolbar(table));
table.addTopToolbar(new NoRecordsToolbar(table));
add(table);