Author: toad
Date: 2008-06-25 19:58:45 +0000 (Wed, 25 Jun 2008)
New Revision: 20710
Modified:
branches/db4o/freenet/src/freenet/client/async/SingleFileInserter.java
Log:
Activation
Modified: branches/db4o/freenet/src/freenet/client/async/SingleFileInserter.java
===================================================================
--- branches/db4o/freenet/src/freenet/client/async/SingleFileInserter.java
2008-06-25 19:58:35 UTC (rev 20709)
+++ branches/db4o/freenet/src/freenet/client/async/SingleFileInserter.java
2008-06-25 19:58:45 UTC (rev 20710)
@@ -489,6 +489,9 @@
}
byte[] metaBytes;
+ if(persistent)
+ // Load keys
+ container.activate(meta, 2);
try {
metaBytes = meta.writeToByteArray();
} catch (MetadataUnresolvedException e1) {
@@ -557,14 +560,21 @@
oldSFI = sfi;
oldMetadataPutter = metadataPutter;
}
- if(persistent)
- container.set(this);
+ if(persistent) {
+ if(oldSFI != null)
+ container.activate(oldSFI, 1);
+ if(oldMetadataPutter != null)
+ container.activate(oldMetadataPutter,
1);
+ container.activate(cb, 1);
+ }
if(oldSFI != null)
oldSFI.cancel(container, context);
if(oldMetadataPutter != null)
oldMetadataPutter.cancel(container, context);
finished = true;
cb.onFailure(e, this, container, context);
+ if(persistent)
+ container.set(this);
}
public BaseClientPutter getParent() {
@@ -669,8 +679,11 @@
}
}
- if(meta)
+ if(meta) {
+ if(persistent)
+ container.activate(cb, 1);
cb.onFetchable(this, container);
+ }
}
private void startMetadata(ObjectContainer container,
ClientContext context) {