boolean retracted = false;
while (!retracted) {
for (int i = RetryWrap.RETRY_DELAY; i >= 0; i--) {
if (stop.get())
throw new DownloadInterruptedError("stop");
if (Thread.currentThread().isInterrupted())
throw new DownloadInterruptedError("interrupted");
info.setDelay(i, e);
notify.run();
try {
Thread.sleep(1000);
} catch (InterruptedException ee) {
throw new DownloadInterruptedError(ee);
}
}
try {
// if we continue to download from old source, and this proxy