You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by ad...@apache.org on 2018/01/04 15:08:48 UTC

[2/2] wicket git commit: WICKET-6514 refactoring of FencedFeedbackPanel

WICKET-6514 refactoring of FencedFeedbackPanel


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

Branch: refs/heads/master
Commit: c69592d147ef4ba404dc96068e9624b54c3d45cd
Parents: 0010939
Author: Andrea Del Bene <ad...@apache.org>
Authored: Thu Jan 4 16:01:13 2018 +0100
Committer: Andrea Del Bene <ad...@apache.org>
Committed: Thu Jan 4 16:08:27 2018 +0100

----------------------------------------------------------------------
 .../wicket/feedback/FeedbackMessagesModel.java  |  5 ++-
 .../wicket/feedback/FencedFeedbackPanel.java    | 46 ++++++++++----------
 2 files changed, 26 insertions(+), 25 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/wicket/blob/c69592d1/wicket-core/src/main/java/org/apache/wicket/feedback/FeedbackMessagesModel.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/main/java/org/apache/wicket/feedback/FeedbackMessagesModel.java b/wicket-core/src/main/java/org/apache/wicket/feedback/FeedbackMessagesModel.java
index ab8f5cd..b574b36 100644
--- a/wicket-core/src/main/java/org/apache/wicket/feedback/FeedbackMessagesModel.java
+++ b/wicket-core/src/main/java/org/apache/wicket/feedback/FeedbackMessagesModel.java
@@ -48,7 +48,10 @@ public class FeedbackMessagesModel implements IModel<List<FeedbackMessage>>
 
 	private final Component pageResolvingComponent;
 
-	/** Controls whether or not feedback from the {@link Session} will be collected **/
+	/** 
+	 * Controls whether or not feedback from the {@link Session} will be collected.
+	 * By default is true.
+	 */
 	private boolean includeSession = true;
 
 	/**

http://git-wip-us.apache.org/repos/asf/wicket/blob/c69592d1/wicket-core/src/main/java/org/apache/wicket/feedback/FencedFeedbackPanel.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/main/java/org/apache/wicket/feedback/FencedFeedbackPanel.java b/wicket-core/src/main/java/org/apache/wicket/feedback/FencedFeedbackPanel.java
index 7360d61..feac059 100644
--- a/wicket-core/src/main/java/org/apache/wicket/feedback/FencedFeedbackPanel.java
+++ b/wicket-core/src/main/java/org/apache/wicket/feedback/FencedFeedbackPanel.java
@@ -77,6 +77,7 @@ import org.apache.wicket.markup.html.panel.FeedbackPanel;
  */
 public class FencedFeedbackPanel extends FeedbackPanel
 {
+	
 	private static final long serialVersionUID = 1L;
 
 	private static final MetaDataKey<Integer> FENCE_KEY = new MetaDataKey<Integer>()
@@ -179,39 +180,17 @@ public class FencedFeedbackPanel extends FeedbackPanel
 				if (fence == null)
 				{
 					// this is the catch-all panel
-
-					return new FeedbackCollector(panel.getPage(), true)
-					{
-						@Override
-						protected boolean shouldRecurseInto(Component component)
-						{
-							return !componentIsMarkedAsFence(component);
-						}
-					}.collect(filter);
+					return new FencedFeedbackCollector(panel.getPage(), true).collect(filter);
 				}
 				else
 				{
 					// this is a fenced panel
-
-					return new FeedbackCollector(fence)
-					{
-						@Override
-						protected boolean shouldRecurseInto(Component component)
-						{
-							// only recurse into components that are not fences
-							return !componentIsMarkedAsFence(component);
-						}
-					}.setIncludeSession(false).collect(filter);
+					return new FencedFeedbackCollector(fence, false).collect(filter);
 				}
 			}
 		};
 	}
 
-	private boolean componentIsMarkedAsFence(Component component)
-	{
-		return component.getMetaData(FENCE_KEY) != null;
-	}
-
 	@Override
 	protected void onReAdd()
 	{
@@ -224,4 +203,23 @@ public class FencedFeedbackPanel extends FeedbackPanel
 		}
 		super.onReAdd();
 	}
+	
+	private final class FencedFeedbackCollector extends FeedbackCollector
+	{
+		private FencedFeedbackCollector(Component component, boolean includeSession)
+		{
+			super(component, includeSession);
+		}
+
+		@Override
+		protected boolean shouldRecurseInto(Component component)
+		{
+			return !componentIsMarkedAsFence(component);
+		}
+		
+		private boolean componentIsMarkedAsFence(Component component)
+		{
+			return component.getMetaData(FENCE_KEY) != null;
+		}
+	}
 }