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