*/
public enum SoneStatus {
+ /** The Sone is unknown, i.e. not yet downloaded. */
+ unknown,
+
/** The Sone is idle, i.e. not being downloaded or inserted. */
idle,
if (!soneCache.containsKey(soneId)) {
Sone sone = new Sone(soneId);
soneCache.put(soneId, sone);
- setSoneStatus(sone, SoneStatus.idle);
+ setSoneStatus(sone, SoneStatus.unknown);
}
return soneCache.get(soneId);
}
*/
public void addLocalSone(Sone sone) {
if (localSones.add(sone)) {
+ setSoneStatus(sone, SoneStatus.idle);
SoneInserter soneInserter = new SoneInserter(this, freenetInterface, sone);
soneInserter.start();
soneInserters.put(sone, soneInserter);
addSone(parsedSone);
}
} finally {
- setSoneStatus(sone, SoneStatus.idle);
+ setSoneStatus(sone, (sone.getTime() == 0) ? SoneStatus.unknown : SoneStatus.idle);
}
}
}, "Sone Downloader").start();