You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by sv...@apache.org on 2012/07/17 20:33:39 UTC
git commit: fixed warnings from compiler and in logs; added javadoc;
aligned tree sorting with table sorting
Updated Branches:
refs/heads/master ccd746419 -> f1bad0fc8
fixed warnings from compiler and in logs; added javadoc; aligned tree sorting with table sorting
Project: http://git-wip-us.apache.org/repos/asf/wicket/repo
Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/f1bad0fc
Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/f1bad0fc
Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/f1bad0fc
Branch: refs/heads/master
Commit: f1bad0fc8eae12d2accd3fa16438855175515a73
Parents: ccd7464
Author: svenmeier <sv...@apache.org>
Authored: Tue Jul 17 20:33:09 2012 +0200
Committer: svenmeier <sv...@apache.org>
Committed: Tue Jul 17 20:33:09 2012 +0200
----------------------------------------------------------------------
.../html/repeater/data/sort/ISortStateLocator.java | 2 +
.../html/repeater/data/sort/OrderByLink.java | 37 +++++++++----
.../markup/html/repeater/data/table/DataTable.java | 6 ++-
.../html/repeater/data/table/DefaultDataTable.java | 4 +-
.../markup/html/repeater/tree/AbstractTree.java | 20 +------
.../html/repeater/tree/DefaultTableTree.java | 12 ++--
.../html/repeater/tree/ISortableTreeProvider.java | 2 +
.../markup/html/repeater/tree/NestedTree.java | 42 +++++++++++++++
.../extensions/markup/html/repeater/tree/Node.java | 2 -
.../markup/html/repeater/tree/TableTree.java | 1 +
.../repeater/tree/table/AbstractTreeColumn.java | 23 ++++++++-
.../html/repeater/tree/table/ITreeColumn.java | 10 +++-
.../html/repeater/tree/table/NodeBorder.java | 4 ++
.../markup/html/repeater/tree/table/NodeModel.java | 18 ++++++-
.../html/repeater/tree/table/TreeDataProvider.java | 4 +-
.../markup/html/repeater/util/ProviderSubset.java | 6 ++
.../html/repeater/util/SortableDataProvider.java | 5 +-
.../html/repeater/util/SortableTreeProvider.java | 23 ++-------
18 files changed, 155 insertions(+), 66 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/wicket/blob/f1bad0fc/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/sort/ISortStateLocator.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/sort/ISortStateLocator.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/sort/ISortStateLocator.java
index 1180591..fa2f5d1 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/sort/ISortStateLocator.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/sort/ISortStateLocator.java
@@ -24,6 +24,8 @@ import org.apache.wicket.util.io.IClusterable;
* version ISortState objects.
*
* @author Igor Vaynberg (ivaynberg)
+ * @param <T>
+ * the type of the sort property
*
*/
public interface ISortStateLocator<T> extends IClusterable
http://git-wip-us.apache.org/repos/asf/wicket/blob/f1bad0fc/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 a7adff8..e027857 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,9 +27,9 @@ 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
+ * the type of the sorting parameter
* @author Phil Kulak
* @author Igor Vaynberg (ivaynberg)
*/
@@ -49,14 +49,15 @@ public class OrderByLink<S> extends Link<Void>
* @param id
* the component id of the link
* @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.
+ * 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 S sortProperty, final ISortStateLocator<S> stateLocator)
+ public OrderByLink(final String id, final S sortProperty,
+ final ISortStateLocator<S> stateLocator)
{
this(id, sortProperty, stateLocator, new DefaultCssProvider<S>());
}
@@ -77,7 +78,7 @@ public class OrderByLink<S> extends Link<Void>
* CSS provider that will be used generate the value of class attribute for this link
*
* @see OrderByLink.ICssProvider
- *
+ *
*/
public OrderByLink(final String id, final S property, final ISortStateLocator<S> stateLocator,
final ICssProvider<S> cssProvider)
@@ -157,8 +158,9 @@ public class OrderByLink<S> extends Link<Void>
/**
* Uses the specified ICssProvider to add css class attributes to the link.
*
+ * @param <S>
+ * type of sort property
* @author Igor Vaynberg ( ivaynberg )
- *
*/
public static class CssModifier<S> extends Behavior
{
@@ -219,8 +221,10 @@ public class OrderByLink<S> extends Link<Void>
/**
* Easily constructible implementation of ICSSProvider
*
+ * @param <S>
+ * the type of the sort property
+ *
* @author Igor Vaynberg (ivaynberg)
- *
*/
public static class CssProvider<S> implements ICssProvider<S>
{
@@ -270,13 +274,18 @@ public class OrderByLink<S> extends Link<Void>
/**
* Convenience implementation of ICssProvider that always returns a null and so never adds a
* class attribute
- *
+ *
+ * @param <S>
+ * the type of the sort property
* @author Igor Vaynberg ( ivaynberg )
*/
public static class VoidCssProvider<S> extends CssProvider<S>
{
private static final long serialVersionUID = 1L;
+ /**
+ * Construct.
+ */
public VoidCssProvider()
{
super("", "", "");
@@ -285,13 +294,19 @@ public class OrderByLink<S> extends Link<Void>
/**
* Default implementation of ICssProvider
- *
+ *
+ * @param <S>
+ * the type of the sort property
+ *
* @author Igor Vaynberg ( ivaynberg )
*/
public static class DefaultCssProvider<S> extends CssProvider<S>
{
private static final long serialVersionUID = 1L;
+ /**
+ * Construct.
+ */
public DefaultCssProvider()
{
super("wicket_orderUp", "wicket_orderDown", "wicket_orderNone");
http://git-wip-us.apache.org/repos/asf/wicket/blob/f1bad0fc/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 4d5a386..c6912e7 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
@@ -74,7 +74,7 @@ import org.apache.wicket.util.visit.IVisitor;
* @param <T>
* The model object type
* @param <S>
- * the type of the sorting parameter
+ * the type of the sorting parameter
*
*/
public class DataTable<T, S> extends Panel implements IPageableItems
@@ -472,6 +472,10 @@ public class DataTable<T, S> extends Panel implements IPageableItems
private static class Caption extends Label
{
/**
+ */
+ private static final long serialVersionUID = 1L;
+
+ /**
* Construct.
*
* @param id
http://git-wip-us.apache.org/repos/asf/wicket/blob/f1bad0fc/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 5b185cf..0cc30d8 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
@@ -39,7 +39,7 @@ import org.apache.wicket.model.IModel;
* @param <T>
* The model object type
* @param <S>
- * the type of the sorting parameter
+ * the type of the sorting parameter
*/
public class DefaultDataTable<T, S> extends DataTable<T, S>
{
@@ -63,7 +63,7 @@ public class DefaultDataTable<T, S> extends DataTable<T, S>
super(id, columns, dataProvider, rowsPerPage);
addTopToolbar(new NavigationToolbar(this));
- addTopToolbar(new HeadersToolbar(this, dataProvider));
+ addTopToolbar(new HeadersToolbar<S>(this, dataProvider));
addBottomToolbar(new NoRecordsToolbar(this));
}
http://git-wip-us.apache.org/repos/asf/wicket/blob/f1bad0fc/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/AbstractTree.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/AbstractTree.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/AbstractTree.java
index ce19863..c3470b9 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/AbstractTree.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/AbstractTree.java
@@ -26,8 +26,6 @@ import org.apache.wicket.markup.repeater.DefaultItemReuseStrategy;
import org.apache.wicket.markup.repeater.IItemReuseStrategy;
import org.apache.wicket.markup.repeater.Item;
import org.apache.wicket.model.IModel;
-import org.apache.wicket.util.visit.IVisit;
-import org.apache.wicket.util.visit.IVisitor;
/**
* Abstract base class for {@link NestedTree} and {@link TableTree}. Uses its model for storing the
@@ -309,6 +307,8 @@ public abstract class AbstractTree<T> extends Panel
* Convenience method to update a single node on an {@link AjaxRequestTarget}. Does nothing if
* the given node is currently not visible or target is {@code null}.
*
+ * This default implementation adds this whole component for rendering.
+ *
* @param node
* node to update
* @param target
@@ -318,21 +318,7 @@ public abstract class AbstractTree<T> extends Panel
{
if (target != null)
{
- final IModel<T> model = getProvider().model(node);
- visitChildren(Node.class, new IVisitor<Node<T>, Void>()
- {
- @Override
- public void component(Node<T> node, IVisit<Void> visit)
- {
- if (model.equals(node.getModel()))
- {
- target.add(node);
- visit.stop();
- }
- visit.dontGoDeeper();
- }
- });
- model.detach();
+ target.add(this);
}
}
http://git-wip-us.apache.org/repos/asf/wicket/blob/f1bad0fc/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 151cbbd..61c1d48 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
@@ -38,7 +38,7 @@ import org.apache.wicket.model.IModel;
* @param <T>
* The node type
* @param <S>
- * the type of the sorting parameter
+ * the type of the sorting parameter
* @author svenmeier
*/
public class DefaultTableTree<T, S> extends TableTree<T, S>
@@ -58,8 +58,8 @@ public class DefaultTableTree<T, S> extends TableTree<T, S>
* @param rowsPerPage
* rows to show on each page
*/
- public DefaultTableTree(String id, List<IColumn<T, S>> columns, ISortableTreeProvider<T, S> provider,
- int rowsPerPage)
+ public DefaultTableTree(String id, List<IColumn<T, S>> columns,
+ ISortableTreeProvider<T, S> provider, int rowsPerPage)
{
this(id, columns, provider, rowsPerPage, null);
}
@@ -78,13 +78,13 @@ public class DefaultTableTree<T, S> extends TableTree<T, S>
* @param state
* expansion state
*/
- public DefaultTableTree(String id, List<IColumn<T, S>> columns, ISortableTreeProvider<T, S> provider,
- int rowsPerPage, IModel<Set<T>> state)
+ 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);
getTable().addTopToolbar(new NavigationToolbar(getTable()));
- getTable().addTopToolbar(new HeadersToolbar(getTable(), provider));
+ getTable().addTopToolbar(new HeadersToolbar<S>(getTable(), provider));
getTable().addBottomToolbar(new NoRecordsToolbar(getTable()));
add(new WindowsTheme());
http://git-wip-us.apache.org/repos/asf/wicket/blob/f1bad0fc/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/ISortableTreeProvider.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/ISortableTreeProvider.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/ISortableTreeProvider.java
index 5a45a01..743d135 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/ISortableTreeProvider.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/ISortableTreeProvider.java
@@ -24,6 +24,8 @@ import org.apache.wicket.extensions.markup.html.repeater.data.sort.ISortStateLoc
* @author svenmeier
* @param <T>
* node type
+ * @param <S>
+ * the type of the sort property
*/
public interface ISortableTreeProvider<T, S> extends ITreeProvider<T>, ISortStateLocator<S>
{
http://git-wip-us.apache.org/repos/asf/wicket/blob/f1bad0fc/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/NestedTree.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/NestedTree.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/NestedTree.java
index c1769c7..cd6084f 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/NestedTree.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/NestedTree.java
@@ -86,6 +86,22 @@ public abstract class NestedTree<T> extends AbstractTree<T>
}
/**
+ * Overriden to let the node output its markup id.
+ *
+ * @see #updateNode(Object, AjaxRequestTarget)
+ * @see Component#setOutputMarkupId(boolean)
+ */
+ @Override
+ public Component newNodeComponent(String id, IModel<T> model)
+ {
+ Component node = super.newNodeComponent(id, model);
+
+ node.setOutputMarkupId(true);
+
+ return node;
+ }
+
+ /**
* Overridden to update the affected {@link BranchItem} only.
*/
@Override
@@ -110,6 +126,32 @@ public abstract class NestedTree<T> extends AbstractTree<T>
}
}
+ /**
+ * Overridden to update the affected {@link Node} only.
+ */
+ @Override
+ public void updateNode(T node, final AjaxRequestTarget target)
+ {
+ if (target != null)
+ {
+ final IModel<T> model = getProvider().model(node);
+ visitChildren(Node.class, new IVisitor<Node<T>, Void>()
+ {
+ @Override
+ public void component(Node<T> node, IVisit<Void> visit)
+ {
+ if (model.equals(node.getModel()))
+ {
+ target.add(node);
+ visit.stop();
+ }
+ visit.dontGoDeeper();
+ }
+ });
+ model.detach();
+ }
+ }
+
private class RootsModel extends AbstractReadOnlyModel<T>
{
private static final long serialVersionUID = 1L;
http://git-wip-us.apache.org/repos/asf/wicket/blob/f1bad0fc/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/Node.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/Node.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/Node.java
index 0399887..557abb6 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/Node.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/Node.java
@@ -64,8 +64,6 @@ public abstract class Node<T> extends Panel
this.tree = tree;
- setOutputMarkupId(true);
-
MarkupContainer junction = createJunctionComponent("junction");
junction.add(new StyleBehavior());
add(junction);
http://git-wip-us.apache.org/repos/asf/wicket/blob/f1bad0fc/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 90af9bd..3fa2bfc 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
@@ -180,6 +180,7 @@ public abstract class TableTree<T, S> extends AbstractTree<T>
{
target.add(item);
visit.stop();
+ return;
}
visit.dontGoDeeper();
}
http://git-wip-us.apache.org/repos/asf/wicket/blob/f1bad0fc/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 94bb80e..380ac61 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
@@ -27,16 +27,32 @@ import org.apache.wicket.model.IModel;
* the type of the sort property
* @author svenmeier
*/
-public abstract class AbstractTreeColumn<T, S> extends AbstractColumn<T, S> implements ITreeColumn<T, S>
+public abstract class AbstractTreeColumn<T, S> extends AbstractColumn<T, S>
+ implements
+ ITreeColumn<T, S>
{
+ /**
+ */
+ private static final long serialVersionUID = 1L;
+
private TableTree<T, S> tree;
+ /**
+ * @param displayModel
+ * model used to generate header text
+ */
public AbstractTreeColumn(IModel<String> displayModel)
{
super(displayModel);
}
+ /**
+ * @param displayModel
+ * model used to generate header text
+ * @param sortProperty
+ * sort property this column represents
+ */
public AbstractTreeColumn(IModel<String> displayModel, S sortProperty)
{
super(displayModel, sortProperty);
@@ -48,6 +64,11 @@ public abstract class AbstractTreeColumn<T, S> extends AbstractColumn<T, S> impl
this.tree = tree;
}
+ /**
+ * Get the containing tree.
+ *
+ * @return tree
+ */
public TableTree<T, S> getTree()
{
return tree;
http://git-wip-us.apache.org/repos/asf/wicket/blob/f1bad0fc/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 0f351d8..763ae5f 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
@@ -21,12 +21,18 @@ import org.apache.wicket.extensions.markup.html.repeater.tree.TableTree;
/**
* @param <T>
- * the type of the model object
+ * the type of the model object
* @param <S>
- * the type of the sorting parameter
+ * the type of the sorting parameter
* @author svenmeier
*/
public interface ITreeColumn<T, S> extends IColumn<T, S>
{
+ /**
+ * Set the containing tree.
+ *
+ * @param t
+ * tree
+ */
public void setTree(TableTree<T, S> t);
}
http://git-wip-us.apache.org/repos/asf/wicket/blob/f1bad0fc/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/table/NodeBorder.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/table/NodeBorder.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/table/NodeBorder.java
index fe566a4..eac23ee 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/table/NodeBorder.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/table/NodeBorder.java
@@ -38,6 +38,10 @@ public class NodeBorder extends Behavior
private boolean[] branches;
+ /**
+ * @param branches
+ * branch
+ */
public NodeBorder(boolean[] branches)
{
this.branches = branches;
http://git-wip-us.apache.org/repos/asf/wicket/blob/f1bad0fc/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/table/NodeModel.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/table/NodeModel.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/table/NodeModel.java
index 85258ec..382d52e 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/table/NodeModel.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/table/NodeModel.java
@@ -20,6 +20,7 @@ import java.util.Arrays;
import org.apache.wicket.extensions.markup.html.repeater.tree.ITreeProvider;
import org.apache.wicket.model.IModel;
+import org.apache.wicket.model.IWrapModel;
/**
* A model wrapping the actual node model, carrying additional information about the parental
@@ -29,8 +30,10 @@ import org.apache.wicket.model.IModel;
* @see ITreeProvider#model(Object)
*
* @author svenmeier
+ * @param <T>
+ * type of nodes
*/
-public class NodeModel<T> implements IModel<T>
+public class NodeModel<T> implements IWrapModel<T>
{
private static final long serialVersionUID = 1L;
@@ -39,12 +42,25 @@ public class NodeModel<T> implements IModel<T>
private boolean[] branches;
+ /**
+ * Wrap the given model.
+ *
+ * @param model
+ * model to wrap
+ * @param branches
+ */
public NodeModel(IModel<T> model, boolean[] branches)
{
this.model = model;
this.branches = branches;
}
+ /**
+ * Get the wrapped model.
+ *
+ * @return wrapped model
+ */
+ @Override
public IModel<T> getWrappedModel()
{
return model;
http://git-wip-us.apache.org/repos/asf/wicket/blob/f1bad0fc/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/table/TreeDataProvider.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/table/TreeDataProvider.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/table/TreeDataProvider.java
index 4f251cb..519b1f4 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/table/TreeDataProvider.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/table/TreeDataProvider.java
@@ -35,9 +35,9 @@ public abstract class TreeDataProvider<T> implements ITreeDataProvider<T>
private final ITreeProvider<T> provider;
- private Branch<T> currentBranch;
+ private transient Branch<T> currentBranch;
- private Branch<T> previousBranch;
+ private transient Branch<T> previousBranch;
private int size = -1;
http://git-wip-us.apache.org/repos/asf/wicket/blob/f1bad0fc/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/util/ProviderSubset.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/util/ProviderSubset.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/util/ProviderSubset.java
index 749999d..2b7dd5c 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/util/ProviderSubset.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/util/ProviderSubset.java
@@ -34,6 +34,8 @@ import org.apache.wicket.model.IModel;
* @see ITreeProvider#model(Object)
*
* @author svenmeier
+ * @param <T>
+ * type of data
*/
public class ProviderSubset<T> implements Set<T>, IDetachable
{
@@ -243,6 +245,10 @@ public class ProviderSubset<T> implements Set<T>, IDetachable
{
return new AbstractReadOnlyModel<Set<T>>()
{
+ /**
+ */
+ private static final long serialVersionUID = 1L;
+
@Override
public Set<T> getObject()
{
http://git-wip-us.apache.org/repos/asf/wicket/blob/f1bad0fc/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/util/SortableDataProvider.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/util/SortableDataProvider.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/util/SortableDataProvider.java
index bdc9902..8671169 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/util/SortableDataProvider.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/util/SortableDataProvider.java
@@ -31,7 +31,7 @@ import org.apache.wicket.extensions.markup.html.repeater.data.table.ISortableDat
* @author Igor Vaynberg (ivaynberg at apache dot org)
* @param <T>
* @param <S>
- * the type of the sorting parameter
+ * the type of the sorting parameter
*/
public abstract class SortableDataProvider<T, S> implements ISortableDataProvider<T, S>
{
@@ -39,7 +39,8 @@ public abstract class SortableDataProvider<T, S> implements ISortableDataProvide
*
*/
private static final long serialVersionUID = 1L;
- private SingleSortState<S> state = new SingleSortState<S>();
+
+ private final SingleSortState<S> state = new SingleSortState<S>();
/**
* @see ISortableDataProvider#getSortState()
http://git-wip-us.apache.org/repos/asf/wicket/blob/f1bad0fc/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/util/SortableTreeProvider.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/util/SortableTreeProvider.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/util/SortableTreeProvider.java
index 866a4ff..c3058f6 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/util/SortableTreeProvider.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/util/SortableTreeProvider.java
@@ -26,37 +26,22 @@ import org.apache.wicket.extensions.markup.html.repeater.tree.ISortableTreeProvi
*
* @author svenmeier
* @param <T>
+ * @param <S>
+ * the type of the sorting parameter
*/
public abstract class SortableTreeProvider<T, S> implements ISortableTreeProvider<T, S>
{
private static final long serialVersionUID = 1L;
- private SingleSortState<S> state = new SingleSortState<S>();
+ private final SingleSortState<S> state = new SingleSortState<S>();
/**
* @see ISortableDataProvider#getSortState()
*/
- @SuppressWarnings("unchecked")
@Override
public final ISortState<S> getSortState()
{
- return (ISortState<S>)state;
- }
-
- /**
- * @see org.apache.wicket.extensions.markup.html.repeater.data.table.ISortableDataProvider#getSortState()
- * @param state
- */
- @SuppressWarnings("unchecked")
- public final void setSortState(ISortState<S> state)
- {
- if (!(state instanceof SingleSortState))
- {
- throw new IllegalArgumentException(
- "argument [state] must be an instance of SingleSortState, but it is [" +
- state.getClass().getName() + "]:[" + state.toString() + "]");
- }
- this.state = (SingleSortState<S>)state;
+ return state;
}
/**