Author: toad
Date: 2008-06-27 19:43:01 +0000 (Fri, 27 Jun 2008)
New Revision: 20824
Modified:
branches/db4o/freenet/src/freenet/client/async/USKProxyCompletionCallback.java
Log:
Activation-proof USKProxyCompletionCallback
Modified:
branches/db4o/freenet/src/freenet/client/async/USKProxyCompletionCallback.java
===================================================================
---
branches/db4o/freenet/src/freenet/client/async/USKProxyCompletionCallback.java
2008-06-27 17:16:56 UTC (rev 20823)
+++
branches/db4o/freenet/src/freenet/client/async/USKProxyCompletionCallback.java
2008-06-27 19:43:01 UTC (rev 20824)
@@ -14,13 +14,17 @@
final USK usk;
final GetCompletionCallback cb;
+ final boolean persistent;
- public USKProxyCompletionCallback(USK usk, GetCompletionCallback cb) {
+ public USKProxyCompletionCallback(USK usk, GetCompletionCallback cb,
boolean persistent) {
this.usk = usk;
this.cb = cb;
+ this.persistent = persistent;
}
public void onSuccess(FetchResult result, ClientGetState state,
ObjectContainer container, ClientContext context) {
+ if(container != null && persistent)
+ container.activate(cb, 1);
context.uskManager.update(usk, usk.suggestedEdition, context);
cb.onSuccess(result, state, container, context);
}
@@ -31,10 +35,14 @@
uri = usk.turnMySSKIntoUSK(uri);
e = new FetchException(e, uri);
}
+ if(container != null && persistent)
+ container.activate(cb, 1);
cb.onFailure(e, state, container, context);
}
public void onBlockSetFinished(ClientGetState state, ObjectContainer
container, ClientContext context) {
+ if(container != null && persistent)
+ container.activate(cb, 1);
cb.onBlockSetFinished(state, container, context);
}
@@ -43,14 +51,20 @@
}
public void onExpectedMIME(String mime, ObjectContainer container) {
+ if(container != null && persistent)
+ container.activate(cb, 1);
cb.onExpectedMIME(mime, container);
}
public void onExpectedSize(long size, ObjectContainer container) {
+ if(container != null && persistent)
+ container.activate(cb, 1);
cb.onExpectedSize(size, container);
}
public void onFinalizedMetadata(ObjectContainer container) {
+ if(container != null && persistent)
+ container.activate(cb, 1);
cb.onFinalizedMetadata(container);
}