WICKET-6023 small tweak for component queuing for the AbstractRepeater

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

Branch: refs/heads/lambdas
Commit: 2bab2be8c4376a857423486e462a9c39786ecf5e
Parents: b9ec667
Author: Andrea Del Bene <[email protected]>
Authored: Thu Nov 5 15:14:44 2015 +0100
Committer: Andrea Del Bene <[email protected]>
Committed: Thu Nov 5 15:16:08 2015 +0100

----------------------------------------------------------------------
 .../wicket/markup/html/list/ListItem.java       | 12 ++++++++-
 .../markup/repeater/AbstractRepeater.java       | 28 --------------------
 2 files changed, 11 insertions(+), 29 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/wicket/blob/2bab2be8/wicket-core/src/main/java/org/apache/wicket/markup/html/list/ListItem.java
----------------------------------------------------------------------
diff --git 
a/wicket-core/src/main/java/org/apache/wicket/markup/html/list/ListItem.java 
b/wicket-core/src/main/java/org/apache/wicket/markup/html/list/ListItem.java
index 68565a5..a3a7da2 100644
--- a/wicket-core/src/main/java/org/apache/wicket/markup/html/list/ListItem.java
+++ b/wicket-core/src/main/java/org/apache/wicket/markup/html/list/ListItem.java
@@ -16,7 +16,11 @@
  */
 package org.apache.wicket.markup.html.list;
 
+import org.apache.wicket.DequeueContext;
 import org.apache.wicket.IGenericComponent;
+import org.apache.wicket.IQueueRegion;
+import org.apache.wicket.markup.IMarkupFragment;
+import org.apache.wicket.markup.Markup;
 import org.apache.wicket.model.IModel;
 
 /**
@@ -28,7 +32,7 @@ import org.apache.wicket.model.IModel;
  * @param <T>
  *            Model object type
  */
-public class ListItem<T> extends LoopItem implements IGenericComponent<T>
+public class ListItem<T> extends LoopItem implements IGenericComponent<T>, 
IQueueRegion
 {
        private static final long serialVersionUID = 1L;
 
@@ -97,4 +101,10 @@ public class ListItem<T> extends LoopItem implements 
IGenericComponent<T>
        {
                setDefaultModelObject(object);
        }
+       
+       @Override
+       public DequeueContext newDequeueContext()
+       {
+               return new DequeueContext(getMarkup(), this, true);
+       }
 }

http://git-wip-us.apache.org/repos/asf/wicket/blob/2bab2be8/wicket-core/src/main/java/org/apache/wicket/markup/repeater/AbstractRepeater.java
----------------------------------------------------------------------
diff --git 
a/wicket-core/src/main/java/org/apache/wicket/markup/repeater/AbstractRepeater.java
 
b/wicket-core/src/main/java/org/apache/wicket/markup/repeater/AbstractRepeater.java
index 25e320a..832196f 100644
--- 
a/wicket-core/src/main/java/org/apache/wicket/markup/repeater/AbstractRepeater.java
+++ 
b/wicket-core/src/main/java/org/apache/wicket/markup/repeater/AbstractRepeater.java
@@ -157,32 +157,4 @@ public abstract class AbstractRepeater extends 
WebMarkupContainer
         * Callback to let the repeater know it should populate itself with its 
items.
         */
        protected abstract void onPopulate();
-
-       @Override
-       public void dequeue(DequeueContext dequeue)
-       {
-               if (size() > 0)
-               {
-                       // essentially what we do is for every child replace 
the repeater with the child in
-                       // dequeue container stack and run the dequeue on the 
child. we also take care to reset
-                       // the state of the dequeue context after we process 
every child.
-
-                       Bookmark bookmark = dequeue.save();
-
-                       for (Component child : this)
-                       {
-                               if (child instanceof MarkupContainer)
-                               {
-                                       dequeue.popContainer(); // pop the 
repeater
-                                       MarkupContainer container = 
(MarkupContainer) child;
-                                       dequeue.pushContainer(container);
-                                       container.dequeue(dequeue);
-                                       dequeue.restore(bookmark);
-                               }
-                       }
-               }
-
-               dequeue.skipToCloseTag();
-
-       }
 }

Reply via email to