aboutsummaryrefslogtreecommitdiff
path: root/fileupload/src/main/java/fi/iki/elonen/NanoHttpdContext.java
diff options
context:
space:
mode:
Diffstat (limited to 'fileupload/src/main/java/fi/iki/elonen/NanoHttpdContext.java')
-rw-r--r--fileupload/src/main/java/fi/iki/elonen/NanoHttpdContext.java51
1 files changed, 51 insertions, 0 deletions
diff --git a/fileupload/src/main/java/fi/iki/elonen/NanoHttpdContext.java b/fileupload/src/main/java/fi/iki/elonen/NanoHttpdContext.java
new file mode 100644
index 0000000..1c4d89f
--- /dev/null
+++ b/fileupload/src/main/java/fi/iki/elonen/NanoHttpdContext.java
@@ -0,0 +1,51 @@
+package fi.iki.elonen;
+
+import org.apache.commons.fileupload.UploadContext;
+
+import java.io.IOException;
+import java.io.InputStream;
+
+/**
+ * Created by victor on 7/30/15.
+ */
+public class NanoHttpdContext implements UploadContext {
+
+ private NanoHTTPD.IHTTPSession session;
+
+ public NanoHttpdContext(NanoHTTPD.IHTTPSession session) {
+ this.session = session;
+ }
+
+ @Override
+ public long contentLength() {
+ long size;
+ try {
+ String cl1 = session.getHeaders().get("content-length");
+ size = Long.parseLong(cl1);
+ } catch (NumberFormatException var4) {
+ size = -1L;
+ }
+
+ return size;
+ }
+
+ @Override
+ public String getCharacterEncoding() {
+ return "UTF-8";
+ }
+
+ @Override
+ public String getContentType() {
+ return this.session.getHeaders().get("content-type");
+ }
+
+ @Override
+ public int getContentLength() {
+ return (int)contentLength();
+ }
+
+ @Override
+ public InputStream getInputStream() throws IOException {
+ return session.getInputStream();
+ }
+}