/* 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.clients.http; import java.io.File; import java.net.MalformedURLException; import java.util.Hashtable; import freenet.client.HighLevelSimpleClient; import freenet.keys.FreenetURI; import freenet.node.NodeClientCore; public class LocalFileInsertToadlet extends LocalFileBrowserToadlet { public static final String PATH = "/insert-browse/"; public static final String POST_TO = "/uploads/"; public LocalFileInsertToadlet (NodeClientCore core, HighLevelSimpleClient highLevelSimpleClient) { super(core, highLevelSimpleClient); } @Override public String path() { return PATH; } @Override protected String postTo() { return POST_TO; } @Override protected boolean allowedDir(File path) { return core.allowUploadFrom(path); } @Override protected String startingDir() { return defaultUploadDir(); } @Override protected Hashtable<String, String> persistenceFields (Hashtable<String, String> set) { Hashtable<String, String> fieldPairs = new Hashtable<String, String>(); FreenetURI furi = null; String key = set.get("key"); if (key != null) { try { furi = new FreenetURI(key); } catch (MalformedURLException e) { furi = null; } } String element = set.get("compress"); if (element != null && Boolean.valueOf(element)) { fieldPairs.put("compress", element); } element = set.get("compatibilityMode"); if (element != null) { fieldPairs.put("compatibilityMode", element); } if (furi != null) { fieldPairs.put("key", furi.toASCIIString()); } element = set.get("overrideSplitfileKey"); if (element != null) fieldPairs.put("overrideSplitfileKey", element); return fieldPairs; } }