Author: toad
Date: 2008-06-18 17:58:04 +0000 (Wed, 18 Jun 2008)
New Revision: 20441
Modified:
branches/db4o/freenet/src/freenet/client/async/ClientRequestScheduler.java
branches/db4o/freenet/src/freenet/client/async/ClientRequestSchedulerCore.java
Log:
Fix NPE in startup
Modified:
branches/db4o/freenet/src/freenet/client/async/ClientRequestScheduler.java
===================================================================
--- branches/db4o/freenet/src/freenet/client/async/ClientRequestScheduler.java
2008-06-18 17:55:38 UTC (rev 20440)
+++ branches/db4o/freenet/src/freenet/client/async/ClientRequestScheduler.java
2008-06-18 17:58:04 UTC (rev 20441)
@@ -110,7 +110,7 @@
public ClientRequestScheduler(boolean forInserts, boolean forSSKs,
RandomSource random, RequestStarter starter, Node node, NodeClientCore core,
SubConfig sc, String name, ClientContext context) {
this.selectorContainer = node.db;
- schedCore = ClientRequestSchedulerCore.create(node, forInserts,
forSSKs, selectorContainer, COOLDOWN_PERIOD, core.clientDatabaseExecutor, this);
+ schedCore = ClientRequestSchedulerCore.create(node, forInserts,
forSSKs, selectorContainer, COOLDOWN_PERIOD, core.clientDatabaseExecutor, this,
context);
schedTransient = new ClientRequestSchedulerNonPersistent(this);
schedCore.fillStarterQueue();
schedCore.start(core);
Modified:
branches/db4o/freenet/src/freenet/client/async/ClientRequestSchedulerCore.java
===================================================================
---
branches/db4o/freenet/src/freenet/client/async/ClientRequestSchedulerCore.java
2008-06-18 17:55:38 UTC (rev 20440)
+++
branches/db4o/freenet/src/freenet/client/async/ClientRequestSchedulerCore.java
2008-06-18 17:58:04 UTC (rev 20441)
@@ -65,7 +65,7 @@
* @param executor
* @return
*/
- public static ClientRequestSchedulerCore create(Node node, final
boolean forInserts, final boolean forSSKs, ObjectContainer selectorContainer,
long cooldownTime, PrioritizedSerialExecutor databaseExecutor,
ClientRequestScheduler sched) {
+ public static ClientRequestSchedulerCore create(Node node, final
boolean forInserts, final boolean forSSKs, ObjectContainer selectorContainer,
long cooldownTime, PrioritizedSerialExecutor databaseExecutor,
ClientRequestScheduler sched, ClientContext context) {
final long nodeDBHandle = node.nodeDBHandle;
ObjectSet results = selectorContainer.query(new Predicate() {
public boolean match(ClientRequestSchedulerCore core) {
@@ -82,7 +82,7 @@
core = new ClientRequestSchedulerCore(node, forInserts,
forSSKs, selectorContainer, cooldownTime);
}
logMINOR = Logger.shouldLog(Logger.MINOR,
ClientRequestSchedulerCore.class);
- core.onStarted(selectorContainer, cooldownTime, sched);
+ core.onStarted(selectorContainer, cooldownTime, sched, context);
return core;
}
@@ -97,7 +97,7 @@
}
}
- private void onStarted(ObjectContainer container, long cooldownTime,
ClientRequestScheduler sched) {
+ private void onStarted(ObjectContainer container, long cooldownTime,
ClientRequestScheduler sched, ClientContext context) {
((Db4oMap)pendingKeys).activationDepth(1);
((Db4oMap)allRequestsByClientRequest).activationDepth(1);
((Db4oList)recentSuccesses).activationDepth(1);
@@ -110,7 +110,7 @@
else
keysFetching = null;
this.sched = sched;
- InsertCompressor.load(container, sched.clientContext);
+ InsertCompressor.load(container, context);
}
void start(DBJobRunner runner) {