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 <[email protected]> Authored: Tue Jul 17 20:33:09 2012 +0200 Committer: svenmeier <[email protected]> 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; } /**
