You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by mg...@apache.org on 2014/03/18 13:58:43 UTC
git commit: WICKET-5284 Too deep recursion in
AbstractHierarchyIterator
Repository: wicket
Updated Branches:
refs/heads/master 9589d9720 -> d31415397
WICKET-5284 Too deep recursion in AbstractHierarchyIterator
Deprecate component hierarchy iterators
Project: http://git-wip-us.apache.org/repos/asf/wicket/repo
Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/d3141539
Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/d3141539
Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/d3141539
Branch: refs/heads/master
Commit: d31415397199ecc71f8486124f02a6e983e23781
Parents: 9589d97
Author: Martin Tzvetanov Grigorov <mg...@apache.org>
Authored: Tue Mar 18 14:57:35 2014 +0200
Committer: Martin Tzvetanov Grigorov <mg...@apache.org>
Committed: Tue Mar 18 14:57:35 2014 +0200
----------------------------------------------------------------------
.../src/main/java/org/apache/wicket/MarkupContainer.java | 6 ++++++
.../wicket/util/iterator/AbstractHierarchyIterator.java | 5 +++++
.../util/iterator/AbstractHierarchyIteratorWithFilter.java | 5 +++++
.../wicket/util/iterator/ComponentHierarchyIterator.java | 7 ++++++-
.../util/iterator/GenericComponentHierarchyIterator.java | 7 ++++++-
5 files changed, 28 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/wicket/blob/d3141539/wicket-core/src/main/java/org/apache/wicket/MarkupContainer.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/main/java/org/apache/wicket/MarkupContainer.java b/wicket-core/src/main/java/org/apache/wicket/MarkupContainer.java
index 69e9372..b11eb10 100644
--- a/wicket-core/src/main/java/org/apache/wicket/MarkupContainer.java
+++ b/wicket-core/src/main/java/org/apache/wicket/MarkupContainer.java
@@ -880,7 +880,10 @@ public abstract class MarkupContainer extends Component implements Iterable<Comp
/**
* @return A iterator which iterators over all children and grand-children the Component
+ * @deprecated ComponentHierarchyIterator is deprecated.
+ * Use {@link #visitChildren(org.apache.wicket.util.visit.IVisitor)} instead
*/
+ @Deprecated
public final ComponentHierarchyIterator visitChildren()
{
return new ComponentHierarchyIterator(this);
@@ -891,7 +894,10 @@ public abstract class MarkupContainer extends Component implements Iterable<Comp
* Filter condition
* @return A iterator which iterators over all children and grand-children the Component,
* returning only components which implement (instanceof) the provided clazz.
+ * @deprecated ComponentHierarchyIterator is deprecated.
+ * Use {@link #visitChildren(Class, org.apache.wicket.util.visit.IVisitor)} instead.
*/
+ @Deprecated
public final ComponentHierarchyIterator visitChildren(final Class<?> clazz)
{
return new ComponentHierarchyIterator(this).filterByClass(clazz);
http://git-wip-us.apache.org/repos/asf/wicket/blob/d3141539/wicket-core/src/main/java/org/apache/wicket/util/iterator/AbstractHierarchyIterator.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/main/java/org/apache/wicket/util/iterator/AbstractHierarchyIterator.java b/wicket-core/src/main/java/org/apache/wicket/util/iterator/AbstractHierarchyIterator.java
index a946977..fd8be61 100644
--- a/wicket-core/src/main/java/org/apache/wicket/util/iterator/AbstractHierarchyIterator.java
+++ b/wicket-core/src/main/java/org/apache/wicket/util/iterator/AbstractHierarchyIterator.java
@@ -42,7 +42,12 @@ import org.apache.wicket.util.lang.Args;
* Form.
* @param <N>
* The base type of all nodes, e.g. Component
+ * @deprecated Hierarchy iterators are deprecated because they have problems with pages with
+ * deep component tree. Use {@link org.apache.wicket.util.visit.IVisitor} instead.
+ * @see org.apache.wicket.MarkupContainer#visitChildren(org.apache.wicket.util.visit.IVisitor)
+ * @see org.apache.wicket.MarkupContainer#visitChildren(Class, org.apache.wicket.util.visit.IVisitor)
*/
+@Deprecated
public abstract class AbstractHierarchyIterator<N, I extends N> implements Iterator<I>, Iterable<I>
{
// An iterator for each level we are down from root
http://git-wip-us.apache.org/repos/asf/wicket/blob/d3141539/wicket-core/src/main/java/org/apache/wicket/util/iterator/AbstractHierarchyIteratorWithFilter.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/main/java/org/apache/wicket/util/iterator/AbstractHierarchyIteratorWithFilter.java b/wicket-core/src/main/java/org/apache/wicket/util/iterator/AbstractHierarchyIteratorWithFilter.java
index af2dfd0..25a4c81 100644
--- a/wicket-core/src/main/java/org/apache/wicket/util/iterator/AbstractHierarchyIteratorWithFilter.java
+++ b/wicket-core/src/main/java/org/apache/wicket/util/iterator/AbstractHierarchyIteratorWithFilter.java
@@ -28,7 +28,12 @@ import org.apache.wicket.util.lang.Generics;
* @author Juergen Donnerstag
* @param <N>
* @param <I>
+ * @deprecated Hierarchy iterators are deprecated because they have problems with pages with
+ * deep component tree. Use {@link org.apache.wicket.util.visit.IVisitor} instead.
+ * @see org.apache.wicket.MarkupContainer#visitChildren(org.apache.wicket.util.visit.IVisitor)
+ * @see org.apache.wicket.MarkupContainer#visitChildren(Class, org.apache.wicket.util.visit.IVisitor)
*/
+@Deprecated
public abstract class AbstractHierarchyIteratorWithFilter<N, I extends N> extends
AbstractHierarchyIterator<N, I>
{
http://git-wip-us.apache.org/repos/asf/wicket/blob/d3141539/wicket-core/src/main/java/org/apache/wicket/util/iterator/ComponentHierarchyIterator.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/main/java/org/apache/wicket/util/iterator/ComponentHierarchyIterator.java b/wicket-core/src/main/java/org/apache/wicket/util/iterator/ComponentHierarchyIterator.java
index bac69d4..66a60ba 100644
--- a/wicket-core/src/main/java/org/apache/wicket/util/iterator/ComponentHierarchyIterator.java
+++ b/wicket-core/src/main/java/org/apache/wicket/util/iterator/ComponentHierarchyIterator.java
@@ -29,7 +29,12 @@ import org.apache.wicket.util.lang.Args;
* A fluent or builder type of API is provided to configure the iterator with filters.
*
* @author Juergen Donnerstag
+ * @deprecated Hierarchy iterators are deprecated because they have problems with pages with
+ * deep component tree. Use {@link org.apache.wicket.util.visit.IVisitor} instead.
+ * @see org.apache.wicket.MarkupContainer#visitChildren(org.apache.wicket.util.visit.IVisitor)
+ * @see org.apache.wicket.MarkupContainer#visitChildren(Class, org.apache.wicket.util.visit.IVisitor)
*/
+@Deprecated
public class ComponentHierarchyIterator extends
AbstractHierarchyIteratorWithFilter<Component, Component>
{
@@ -238,4 +243,4 @@ public class ComponentHierarchyIterator extends
super.addTraverseFilters(filter);
return this;
}
-}
\ No newline at end of file
+}
http://git-wip-us.apache.org/repos/asf/wicket/blob/d3141539/wicket-core/src/main/java/org/apache/wicket/util/iterator/GenericComponentHierarchyIterator.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/main/java/org/apache/wicket/util/iterator/GenericComponentHierarchyIterator.java b/wicket-core/src/main/java/org/apache/wicket/util/iterator/GenericComponentHierarchyIterator.java
index a2b7a46..2f623d8 100644
--- a/wicket-core/src/main/java/org/apache/wicket/util/iterator/GenericComponentHierarchyIterator.java
+++ b/wicket-core/src/main/java/org/apache/wicket/util/iterator/GenericComponentHierarchyIterator.java
@@ -31,7 +31,12 @@ import org.apache.wicket.util.lang.Args;
* @author Juergen Donnerstag
* @param <I>
* The type which next() should return (the iterator type)
+ * @deprecated Hierarchy iterators are deprecated because they have problems with pages with
+ * deep component tree. Use {@link org.apache.wicket.util.visit.IVisitor} instead.
+ * @see org.apache.wicket.MarkupContainer#visitChildren(org.apache.wicket.util.visit.IVisitor)
+ * @see org.apache.wicket.MarkupContainer#visitChildren(Class, org.apache.wicket.util.visit.IVisitor)
*/
+@Deprecated
public class GenericComponentHierarchyIterator<I extends Component> extends
AbstractHierarchyIteratorWithFilter<Component, I>
{
@@ -200,4 +205,4 @@ public class GenericComponentHierarchyIterator<I extends Component> extends
super.addTraverseFilters(filter);
return this;
}
-}
\ No newline at end of file
+}