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); } } } _______________________________________________ cvs mailing list [email protected] http://emu.freenetproject.org/cgi-bin/mailman/listinfo/cvs
