You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@labs.apache.org by si...@apache.org on 2009/12/09 16:00:27 UTC
svn commit: r888821 -
/labs/magma/trunk/foundation-website/src/main/java/org/apache/magma/website/utils/OnDemandBinder.java
Author: simoneg
Date: Wed Dec 9 15:00:26 2009
New Revision: 888821
URL: http://svn.apache.org/viewvc?rev=888821&view=rev
Log:
LABS-380 : Fixes on file handling at request parsing level
Modified:
labs/magma/trunk/foundation-website/src/main/java/org/apache/magma/website/utils/OnDemandBinder.java
Modified: labs/magma/trunk/foundation-website/src/main/java/org/apache/magma/website/utils/OnDemandBinder.java
URL: http://svn.apache.org/viewvc/labs/magma/trunk/foundation-website/src/main/java/org/apache/magma/website/utils/OnDemandBinder.java?rev=888821&r1=888820&r2=888821&view=diff
==============================================================================
--- labs/magma/trunk/foundation-website/src/main/java/org/apache/magma/website/utils/OnDemandBinder.java (original)
+++ labs/magma/trunk/foundation-website/src/main/java/org/apache/magma/website/utils/OnDemandBinder.java Wed Dec 9 15:00:26 2009
@@ -45,6 +45,7 @@
private Map<String,String> newCookies = null;
private Map<String, Object> unconvertedSession = new HashMap<String, Object>();
+ private Map<String,String[]> allparams = null;
public enum Interaction {
session,
@@ -82,8 +83,9 @@
}
private Object fetchAllParams() {
+ if (allparams != null) return allparams;
if (uploads == null) {
- return req.getParameterMap();
+ allparams = req.getParameterMap();
} else {
Map<String, String[]> params = new HashMap<String, String[]>();
for (Map.Entry<String, FileItem[]> entry : uploads.entrySet()) {
@@ -93,9 +95,11 @@
if (items[0].isFormField()) {
vals[i] = items[i].getString();
} else {
+ if (items[i].getSize() == 0) continue;
File f;
try {
f = File.createTempFile("magma_upload", ".raw");
+ f.deleteOnExit();
items[i].write(f);
} catch (Exception e) {
throw new MagmaException(e, "Error saving temporary uploaded file");
@@ -103,13 +107,14 @@
String origname = items[i].getName();
origname = origname.replaceAll("\\\\", "/");
String[] split = origname.split("/");
- vals[i] = split[split.length - 1] + "/" + f.getAbsolutePath();
+ vals[i] = "FILE " + split[split.length - 1] + ":" + f.getAbsolutePath();
}
}
params.put(entry.getKey(), vals);
}
- return params;
+ allparams = params;
}
+ return allparams;
}
private Object fetchRequest(String rawname, Class type) {
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@labs.apache.org
For additional commands, e-mail: commits-help@labs.apache.org