if (!fReset)
if (!fRestart)
		public void run() {			// we loop until we got a complete result			while (!fAbort) {				if (fDelay > 0) {					try {						Thread.sleep(fDelay);					} catch (InterruptedException e) {						if (fAbort)							break;						continue;	// restart timer					}				}								fReset= false;				Collection searchResult= doSearchTypes();				if (searchResult != null) {					if (!fAbort && !fReset) {						TypeInfo[] result= (TypeInfo[]) searchResult.toArray(new TypeInfo[searchResult.size()]);						Arrays.sort(result, fgTypeNameComparator);						setCache(result);					}					if (!fReset)						break;				}			}		}