Merge branch 'wicket-6.x' into wicket-atmosphere-tester

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

Branch: refs/heads/wicket-atmosphere-tester
Commit: 2a123aebd33e52376d26c83167552612230f0be5
Parents: c9a0b8f 18f269e
Author: Martin Tzvetanov Grigorov <[email protected]>
Authored: Thu Aug 14 13:31:43 2014 +0200
Committer: Martin Tzvetanov Grigorov <[email protected]>
Committed: Thu Aug 14 13:31:43 2014 +0200

----------------------------------------------------------------------
 .../atmosphere/AtmosphereRequestHandler.java     |  9 +++++----
 .../wicket/atmosphere/AtmosphereWebRequest.java  |  8 ++++----
 .../org/apache/wicket/atmosphere/EventBus.java   | 19 +++++++++++--------
 3 files changed, 20 insertions(+), 16 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/wicket/blob/2a123aeb/wicket-experimental/wicket-atmosphere/src/main/java/org/apache/wicket/atmosphere/EventBus.java
----------------------------------------------------------------------
diff --cc 
wicket-experimental/wicket-atmosphere/src/main/java/org/apache/wicket/atmosphere/EventBus.java
index e60ca01,80837b8..d3e9c32
--- 
a/wicket-experimental/wicket-atmosphere/src/main/java/org/apache/wicket/atmosphere/EventBus.java
+++ 
b/wicket-experimental/wicket-atmosphere/src/main/java/org/apache/wicket/atmosphere/EventBus.java
@@@ -399,13 -383,17 +398,17 @@@ public class EventBus implements Unboun
                synchronized (this)
                {
                        key = trackedPages.get(resource.uuid());
-                       subscriptionsForPage = Collections2.filter(
-                               
Collections.unmodifiableCollection(subscriptions.get(key)), new 
EventFilter(event));
+                       Collection<EventSubscription> eventSubscriptions = 
subscriptions.get(key);
+                       subscriptionsForPage = 
Iterables.filter(eventSubscriptions, new EventFilter(event));
                }
                if (key == null)
 -                      broadcaster.removeAtmosphereResource(resource);
 +                      getBroadcaster().removeAtmosphereResource(resource);
-               else if (!subscriptionsForPage.isEmpty())
-                       post(resource, key, subscriptionsForPage, event);
+               else
+               {
+                       Iterator<EventSubscription> iterator = 
subscriptionsForPage.iterator();
+                       if (iterator.hasNext())
+                               post(resource, key, iterator, event);
+               }
        }
  
        private void post(AtmosphereResource resource, PageKey pageKey,

Reply via email to