r27119 - trunk/freenet/src/freenet/client/async
[email protected] Mon, 20 Apr 2009 20:59:29 +0000
| Newsgroups | gmane.network.freenet.cvs |
|---|---|
| Message-ID | <[email protected]> |
Author: saces
Date: 2009-04-20 20:59:28 +0000 (Mon, 20 Apr 2009)
New Revision: 27119
Modified:
trunk/freenet/src/freenet/client/async/ContainerInserter.java
Log:
remove unused code
remove resolved TODOs (metadata format)
cleanup
Modified: trunk/freenet/src/freenet/client/async/ContainerInserter.java
===================================================================
--- trunk/freenet/src/freenet/client/async/ContainerInserter.java 2009-04-20 20:42:06 UTC (rev 27118)
+++ trunk/freenet/src/freenet/client/async/ContainerInserter.java 2009-04-20 20:59:28 UTC (rev 27119)
@@ -1,6 +1,6 @@
-/**
- *
- */
+/* This code is part of Freenet. It is distributed under the GNU General
+ * Public License, version 2 (or at your option any later version). See
+ * http://www.gnu.org/ for further details of the GPL. */
package freenet.client.async;
import java.io.BufferedOutputStream;
@@ -8,7 +8,6 @@
import java.io.OutputStream;
import java.util.ArrayList;
import java.util.HashMap;
-import java.util.Map.Entry;
import java.util.zip.ZipEntry;
import java.util.zip.ZipOutputStream;
@@ -34,9 +33,6 @@
/**
* pack the container/archive, then hand it off to SimpleFileInserter
*
- * TODO fix resolve metadata
- * -how to format the redirects/submetadata?
- * -the current metadataMap thingy s***s, invent a working one ;)
* TODO persistence
* TODO add a MAX_SIZE for the final container(file)
*
@@ -71,7 +67,6 @@
}
private ArrayList<ContainerElement> containerItems;
- private HashMap<Metadata, Entry<String, Object>> metadataMap;
private final BaseClientPutter parent;
private final PutCompletionCallback cb;
@@ -126,7 +121,6 @@
dontCompress = dontCompress2;
reportMetadataOnly = reportMetadataOnly2;
containerItems = new ArrayList<ContainerElement>();
- metadataMap = new HashMap<Metadata, Entry<String, Object>>();
}
public void cancel(ObjectContainer container, ClientContext context) {
@@ -211,11 +205,12 @@
Bucket bucket = null;
int x = 0;
+ HashMap<String,Object> manifest = new HashMap<String,Object>();
+ makeManifest(origMetadata, manifest, "/");
+ Metadata md = Metadata.mkRedirectionManifestWithMetadata(manifest);
+
while(true) {
try {
- HashMap<String,Object> manifest = new HashMap<String,Object>();
- makeManifest(origMetadata, manifest, "/");
- Metadata md = Metadata.mkRedirectionManifestWithMetadata(manifest);
bucket = context.tempBucketFactory.makeBucket(-1);
byte[] buf = md.writeToByteArray();
OutputStream os = bucket.getOutputStream();
@@ -248,8 +243,7 @@
os.close();
String nameInArchive = ".metadata-"+(x++);
containerItems.add(new ContainerElement(bucket, nameInArchive));
- Entry<String, Object> entry = metadataMap.get(m[i]);
- entry.setValue(new Metadata(Metadata.ARCHIVE_INTERNAL_REDIRECT, null, null, nameInArchive, null));
+ m[i].resolve(nameInArchive);
} catch (MetadataUnresolvedException e1) {
x = resolve(e, x, bucket, key, element2, container, context);
}
@@ -349,9 +343,8 @@
}
private void makeManifest(HashMap<String, Object> manifestElements, HashMap<String,Object> manifest, String archivePrefix) {
- for (Entry<String, Object>entry:manifestElements.entrySet()) {
- String name = entry.getKey();
- Object o = entry.getValue();
+ for (String name:manifestElements.keySet()) {
+ Object o = manifestElements.get(name);
if(o instanceof HashMap) {
@SuppressWarnings("unchecked")
HashMap<String,Object> hm = (HashMap<String, Object>) o;
@@ -365,7 +358,6 @@
//already Metadata, take as is
//System.out.println("Decompose: "+name+" (Metadata)");
manifest.put(name, o);
- metadataMap.put((Metadata) o, entry);
} else {
ManifestElement element = (ManifestElement) o;
String mimeType = element.mimeOverride;
@@ -384,7 +376,6 @@
m = new Metadata(Metadata.ARCHIVE_INTERNAL_REDIRECT, null, null, archivePrefix+element.fullName, cm);
}
manifest.put(name, m);
- metadataMap.put(m, entry);
}
}
}