void checkSourceAssociations() { Hashtable <String, int> hashPassed = new Hashtable <String, int>(); for (int nCurSrc = m_sources.size() - 1; nCurSrc > 0;) { SyncSource oCurSrc = (SyncSource)m_sources.elementAt(nCurSrc); if (oCurSrc.getAssociations().size() == 0 || hashPassed.containsKey(oCurSrc.getName())) { nCurSrc--; } else { int nSrc = nCurSrc; for (int i = 0; i < (int)oCurSrc.getAssociations().size(); i++) { SyncSource.CAssociation oAssoc = (SyncSource.CAssociation)oCurSrc.getAssociations().elementAt(i); int nAssocSrcIndex = findSrcIndex(m_sources, oAssoc.m_strSrcName); if (nAssocSrcIndex >= 0 && nAssocSrcIndex < nSrc) { m_sources.removeElementAt(nSrc); m_sources.insertElementAt(oCurSrc, nAssocSrcIndex); nSrc = nAssocSrcIndex; } } } hashPassed.put(oCurSrc.getName(), 1); } }