# HG changeset patch # User Ed Swartz # Date 1272028944 18000 # Node ID 076ad30965762e0664f45b5f8931f31e04996294 # Parent f3b387a17eb70888fcd45c7374696eebda9fd993 Fix ConcurrentModificationException when accumulating service testers diff -r f3b387a17eb7 -r 076ad3096576 connectivity/com.nokia.carbide.remoteConnections/src/com/nokia/carbide/remoteconnections/internal/ServiceTester.java --- a/connectivity/com.nokia.carbide.remoteConnections/src/com/nokia/carbide/remoteconnections/internal/ServiceTester.java Wed Apr 21 15:10:34 2010 -0500 +++ b/connectivity/com.nokia.carbide.remoteConnections/src/com/nokia/carbide/remoteconnections/internal/ServiceTester.java Fri Apr 23 08:22:24 2010 -0500 @@ -18,6 +18,7 @@ package com.nokia.carbide.remoteconnections.internal; import java.util.Collection; +import java.util.Collections; import java.util.HashMap; import java.util.HashSet; import java.util.Iterator; @@ -89,13 +90,15 @@ } private ServiceTester() { - registry = new HashSet(); + registry = Collections.synchronizedSet(new HashSet()); runningThreads = new HashSet(); Thread t = new Thread(new Runnable() { public void run() { while (true) { - Collection> csSetsByResource = - createConnectedServiceSetsByResource(new HashSet(registry)); + Collection> csSetsByResource; + synchronized (registry) { + csSetsByResource = createConnectedServiceSetsByResource(new HashSet(registry)); + } for (Set set : csSetsByResource) { Collection> csSetsByService = createConnectedServiceSetsByService(set);