fixed ConcurrentModificationException in HttpConnectionInfos

git-svn-id: https://svn.berlios.de/svnroot/repos/yacy/trunk@4690 6c8d7289-2bf4-0310-a012-ef5d649a1542
pull/1/head
danielr 17 years ago
parent c7021c14bb
commit d8677ba611

@ -230,11 +230,12 @@ public final class Connections_p {
prop.putNum("numActivePending", numActivePending);
// client sessions
Set<HttpConnectionInfo> a = HttpConnectionInfo.getAllConnections();
Set<HttpConnectionInfo> allConnections = HttpConnectionInfo.getAllConnections();
// TODO sorting
// Arrays.sort(a, httpc.connectionTimeComparatorInstance);
int c = 0;
for (HttpConnectionInfo conInfo: a) {
synchronized (allConnections) {
for (HttpConnectionInfo conInfo: allConnections) {
prop.put("clientList_" + c + "_clientProtocol", conInfo.getProtocol());
prop.putNum("clientList_" + c + "_clientLifetime", conInfo.getLifetime());
prop.putNum("clientList_" + c + "_clientIdletime", conInfo.getIdletime());
@ -243,6 +244,7 @@ public final class Connections_p {
prop.put("clientList_" + c + "_clientID", conInfo.getID());
c++;
}
}
prop.put("clientList", c);
prop.put("clientActive", JakartaCommonsHttpClient.connectionCount());

@ -111,6 +111,10 @@ public class HttpConnectionInfo {
}
/**
* gets a {@link Set} of all collected ConnectionInfos
*
* Important: iterations must be synchronized!
*
* @return the allConnections
*/
public static Set<HttpConnectionInfo> getAllConnections() {

Loading…
Cancel
Save