Author: robert
Date: 2007-12-10 18:08:07 +0000 (Mon, 10 Dec 2007)
New Revision: 16445
Modified:
trunk/freenet/src/freenet/client/async/USKFetcher.java
Log:
Use Ticker rather than java.util.Timer for USKFetcher scheduling
Modified: trunk/freenet/src/freenet/client/async/USKFetcher.java
===================================================================
--- trunk/freenet/src/freenet/client/async/USKFetcher.java 2007-12-09
22:40:42 UTC (rev 16444)
+++ trunk/freenet/src/freenet/client/async/USKFetcher.java 2007-12-10
18:08:07 UTC (rev 16445)
@@ -7,8 +7,6 @@
import java.util.HashSet;
import java.util.Iterator;
import java.util.LinkedList;
-import java.util.Timer;
-import java.util.TimerTask;
import java.util.Vector;
import freenet.client.FetchContext;
@@ -65,7 +63,6 @@
public class USKFetcher implements ClientGetState {
private static boolean logMINOR;
- private static Timer uskWakeupTimer;
/** USK manager */
private final USKManager uskManager;
@@ -442,15 +439,11 @@
if (delay<=0) {
schedule();
} else {
- if (uskWakeupTimer==null) {
- synchronized (USKFetcher.class) {
- //FIXME: Generates an un-named timer
thread, rather than 'USKWakeupTimer' (java 1.5)
- if (uskWakeupTimer==null)
- uskWakeupTimer=new Timer(true);
+ uskManager.ticker.queueTimedJob(new Runnable() {
+ public void run() {
+ USKFetcher.this.schedule();
}
- }
- uskWakeupTimer.schedule(new USKWakeup(), delay);
- Logger.minor(this, "schedule next USKCheck in "+delay+"
ms");
+ }, delay);
}
}
@@ -544,10 +537,4 @@
return -1;
}
- class USKWakeup extends TimerTask {
- public void run() {
- //schedule() will check for (USKFetcher.this.cancelled)
- USKFetcher.this.schedule();
- }
- }
}