Author: toad
Date: 2009-01-30 16:09:32 +0000 (Fri, 30 Jan 2009)
New Revision: 25399

Modified:
   branches/db4o/freenet/src/freenet/client/async/BaseSingleFileFetcher.java
   branches/db4o/freenet/src/freenet/client/async/DatastoreChecker.java
   
branches/db4o/freenet/src/freenet/client/async/SplitFileFetcherSubSegment.java
   branches/db4o/freenet/src/freenet/node/SendableGet.java
Log:
Activation: Fix NPE


Modified: 
branches/db4o/freenet/src/freenet/client/async/BaseSingleFileFetcher.java
===================================================================
--- branches/db4o/freenet/src/freenet/client/async/BaseSingleFileFetcher.java   
2009-01-30 15:43:34 UTC (rev 25398)
+++ branches/db4o/freenet/src/freenet/client/async/BaseSingleFileFetcher.java   
2009-01-30 16:09:32 UTC (rev 25399)
@@ -184,15 +184,12 @@
                return parent.getClient();
        }
 
+       @Override
        public boolean dontCache(ObjectContainer container) {
+               if(persistent) container.activate(ctx, 1);
                return !ctx.cacheLocalRequests;
        }
        
-       @Override
-       public boolean dontCache() {
-               return !ctx.cacheLocalRequests;
-       }
-       
        public void onGotKey(Key key, KeyBlock block, ObjectContainer 
container, ClientContext context) {
                if(persistent) {
                        container.activate(this, 1);

Modified: branches/db4o/freenet/src/freenet/client/async/DatastoreChecker.java
===================================================================
--- branches/db4o/freenet/src/freenet/client/async/DatastoreChecker.java        
2009-01-30 15:43:34 UTC (rev 25398)
+++ branches/db4o/freenet/src/freenet/client/async/DatastoreChecker.java        
2009-01-30 16:09:32 UTC (rev 25399)
@@ -121,7 +121,7 @@
                                }
                                BlockSet blocks = item.blocks;
                                container.activate(getter, 1);
-                               boolean dontCache = getter.dontCache();
+                               boolean dontCache = getter.dontCache(container);
                                ClientRequestScheduler sched = 
getter.getScheduler(context);
                                synchronized(this) {
                                        
if(persistentGetters[prio].contains(getter)) continue;
@@ -243,7 +243,7 @@
        public void queuePersistentRequest(SendableGet getter, BlockSet blocks, 
ObjectContainer container) {
                Key[] checkKeys = getter.listKeys(container);
                short prio = getter.getPriorityClass(container);
-               boolean dontCache = getter.dontCache();
+               boolean dontCache = getter.dontCache(container);
                ClientRequestScheduler sched = getter.getScheduler(context);
                DatastoreCheckerItem item = new DatastoreCheckerItem(getter, 
context.nodeDBHandle, prio, blocks);
                container.store(item);
@@ -354,7 +354,7 @@
                        }
                }
                if(!persistent) {
-                       dontCache = getter.dontCache();
+                       dontCache = getter.dontCache(null);
                        sched = getter.getScheduler(context);
                }
                boolean anyValid = false;

Modified: 
branches/db4o/freenet/src/freenet/client/async/SplitFileFetcherSubSegment.java
===================================================================
--- 
branches/db4o/freenet/src/freenet/client/async/SplitFileFetcherSubSegment.java  
    2009-01-30 15:43:34 UTC (rev 25398)
+++ 
branches/db4o/freenet/src/freenet/client/async/SplitFileFetcherSubSegment.java  
    2009-01-30 16:09:32 UTC (rev 25399)
@@ -67,7 +67,8 @@
        }
        
        @Override
-       public boolean dontCache() {
+       public boolean dontCache(ObjectContainer container) {
+               if(persistent) container.activate(ctx, 1);
                return !ctx.cacheLocalRequests;
        }
 

Modified: branches/db4o/freenet/src/freenet/node/SendableGet.java
===================================================================
--- branches/db4o/freenet/src/freenet/node/SendableGet.java     2009-01-30 
15:43:34 UTC (rev 25398)
+++ branches/db4o/freenet/src/freenet/node/SendableGet.java     2009-01-30 
16:09:32 UTC (rev 25399)
@@ -52,8 +52,9 @@
        /** Should the request ignore the datastore? */
        public abstract boolean ignoreStore();
 
-       /** If true, don't cache local requests */
-       public abstract boolean dontCache();
+       /** If true, don't cache local requests 
+        * @param container */
+       public abstract boolean dontCache(ObjectContainer container);
 
        // Implementation
 

_______________________________________________
cvs mailing list
[email protected]
http://emu.freenetproject.org/cgi-bin/mailman/listinfo/cvs

Reply via email to