*/
Set eSet = discoveredMap.entrySet();
Iterator iter = eSet.iterator();
while(iter.hasNext()) {
Map.Entry pair = (Map.Entry)iter.next();
ServiceRegistrar srvcReg = (ServiceRegistrar)pair.getKey();
String[] srvcRegGroups = (String[])pair.getValue();
boolean inSet = inToDiscoverSet(srvcReg,srvcRegGroups);
if( inToDiscoverSet(srvcReg,srvcRegGroups) ) continue;
expectedDiscoveredMap.remove(srvcReg);
expectedNoInterestDiscardedMap.put(srvcReg,srvcRegGroups);
expectedPassiveDiscardedMap.put(srvcReg,srvcRegGroups);
}//end loop
/* If one of the registrars that's already been DISCARDED
* belongs to any of the groups to discover and/or has a
* locator that's an element of the set of locators to
* discover, MOVE that registrar's corresponding element from
* the discardedMap into the expectedDiscoveredMap.
*/
eSet = discardedMap.entrySet();
iter = eSet.iterator();
while(iter.hasNext()) {
Map.Entry pair = (Map.Entry)iter.next();
ServiceRegistrar srvcReg = (ServiceRegistrar)pair.getKey();
String[] srvcRegGroups = (String[])pair.getValue();
if( !inToDiscoverSet(srvcReg,srvcRegGroups) ) continue;
discardedMap.remove(srvcReg);
expectedNoInterestDiscardedMap.remove(srvcReg);
expectedPassiveDiscardedMap.remove(srvcReg);
expectedDiscoveredMap.put(srvcReg,srvcRegGroups);
}//end loop
}//end sync(this)
/* If one of the groups or locs to discover corresponds to one
* or more of the lookups that were started but have not yet
* been discovered (that is, the group or loc to discover does not
* correspond to any element of the discoveredMap), then add
* those un-discovered lookups to the expectedDiscoveredMap.
*/
synchronized(lockObject) {
Iterator iter = genMap.keySet().iterator();
while(iter.hasNext()) {
Object curGen = iter.next();
ServiceRegistrar srvcReg = null;
LookupLocator srvcRegLoc = null;
/* retrieve the locator and member groups of cur lookup */
if( curGen instanceof DiscoveryProtocolSimulator ) {
DiscoveryProtocolSimulator generator
= (DiscoveryProtocolSimulator)curGen;
srvcReg = generator.getLookupProxy();
srvcRegLoc = generator.getLookupLocator();
} else {
srvcReg = (ServiceRegistrar)curGen;
try {
srvcRegLoc = QAConfig.getConstrainedLocator(srvcReg.getLocator());
} catch(RemoteException e) {
e.printStackTrace();
continue;
}
}//endif