package freenet.node;
import freenet.support.Logger;
import freenet.support.TimeUtil;
/** Contains information on why we can't route a request. Initially just a flag
* and a time. */
public class RecentlyFailedReturn {
private static volatile boolean logMINOR;
static {
Logger.registerClass(RecentlyFailedReturn.class);
}
private boolean recentlyFailed;
private long wakeup;
public synchronized void fail(int countWaiting, long wakeupTime) {
if(logMINOR) Logger.minor(this, "RecentlyFailed until "+TimeUtil.formatTime(wakeupTime - System.currentTimeMillis()));
this.wakeup = wakeupTime;
this.recentlyFailed = true;
}
public synchronized long recentlyFailed() {
if(recentlyFailed)
return wakeup;
else
return -1;
}
}