- Updated two for-loops to be compilable on Java 1.8 but still be binary compatible with Java 1.6
diff --git a/core/src/flex/messaging/FlexSessionManager.java b/core/src/flex/messaging/FlexSessionManager.java
index bec0352..9ce1407 100644
--- a/core/src/flex/messaging/FlexSessionManager.java
+++ b/core/src/flex/messaging/FlexSessionManager.java
@@ -18,6 +18,8 @@
import flex.management.ManageableComponent;
import flex.messaging.log.LogCategories;
+
+import java.util.Enumeration;
import java.util.concurrent.ConcurrentHashMap;
/**
@@ -289,9 +291,11 @@
return;
super.stop();
-
- for (Class<? extends FlexSession> sessionClass : providers.keySet())
+
+ Enumeration<Class<? extends FlexSession>> sessionClasses = providers.keys();
+ while (sessionClasses.hasMoreElements())
{
+ Class<? extends FlexSession> sessionClass = sessionClasses.nextElement();
unregisterFlexSessionProvider(sessionClass);
}
providers.clear();
diff --git a/core/src/flex/messaging/endpoints/BasePollingHTTPEndpoint.java b/core/src/flex/messaging/endpoints/BasePollingHTTPEndpoint.java
index 3c29fae..0353354 100644
--- a/core/src/flex/messaging/endpoints/BasePollingHTTPEndpoint.java
+++ b/core/src/flex/messaging/endpoints/BasePollingHTTPEndpoint.java
@@ -29,6 +29,7 @@
import flex.messaging.messages.CommandMessage;
import flex.messaging.util.UserAgentManager;
+import java.util.Enumeration;
import java.util.concurrent.ConcurrentHashMap;
/**
@@ -410,8 +411,10 @@
return;
// Notify any currently waiting polls.
- for (Object notifier : currentWaitedRequests.keySet())
+ Enumeration keys = currentWaitedRequests.keys();
+ while (keys.hasMoreElements())
{
+ Object notifier = keys.nextElement();
synchronized (notifier)
{
notifier.notifyAll(); // Break any current waits.