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.


Reply via email to