Author: toad
Date: 2008-05-21 14:22:18 +0000 (Wed, 21 May 2008)
New Revision: 20019
Modified:
branches/db4o/freenet/src/freenet/client/async/ClientRequestSchedulerCore.java
Log:
Store the container. It won't be persisted by db4o, but it won't break it
either, and we can restore it.
Modified:
branches/db4o/freenet/src/freenet/client/async/ClientRequestSchedulerCore.java
===================================================================
---
branches/db4o/freenet/src/freenet/client/async/ClientRequestSchedulerCore.java
2008-05-21 13:59:42 UTC (rev 20018)
+++
branches/db4o/freenet/src/freenet/client/async/ClientRequestSchedulerCore.java
2008-05-21 14:22:18 UTC (rev 20019)
@@ -30,6 +30,7 @@
*/
class ClientRequestSchedulerCore extends ClientRequestSchedulerBase {
+ private ObjectContainer container;
private static boolean logMINOR;
/** Identifier in the database for the node we are attached to */
private final long nodeDBHandle;
@@ -62,19 +63,21 @@
core = new ClientRequestSchedulerCore(node, forInserts,
forSSKs, selectorContainer);
}
logMINOR = Logger.shouldLog(Logger.MINOR,
ClientRequestSchedulerCore.class);
- core.onStarted();
+ core.onStarted(selectorContainer);
return core;
}
ClientRequestSchedulerCore(Node node, boolean forInserts, boolean
forSSKs, ObjectContainer selectorContainer) {
super(forInserts, forSSKs, forInserts ? null :
selectorContainer.ext().collections().newHashMap(1024),
selectorContainer.ext().collections().newHashMap(32),
selectorContainer.ext().collections().newLinkedList());
this.nodeDBHandle = node.nodeDBHandle;
+ this.container = selectorContainer;
}
- private void onStarted() {
+ private void onStarted(ObjectContainer container) {
((Db4oMap)pendingKeys).activationDepth(1);
((Db4oMap)allRequestsByClientRequest).activationDepth(1);
((Db4oList)recentSuccesses).activationDepth(1);
+ this.container = container;
}
// We pass in the schedTransient to the next two methods so that we can
select between either of them.