aboutsummaryrefslogtreecommitdiffstats
path: root/src/com/itmill/toolkit/terminal/gwt/server/ServletMultipartRequest.java
diff options
context:
space:
mode:
authorJoonas Lehtinen <joonas.lehtinen@itmill.com>2007-07-17 08:28:41 +0000
committerJoonas Lehtinen <joonas.lehtinen@itmill.com>2007-07-17 08:28:41 +0000
commit511a2b97c27f986d0f6ee5231e76c913cf467f39 (patch)
treec412a5626c8ab676e4ede4829c43790ec539ed7f /src/com/itmill/toolkit/terminal/gwt/server/ServletMultipartRequest.java
parent2b666eb05f7a3faf454c3654168fa3e6f7cf62f3 (diff)
downloadvaadin-framework-511a2b97c27f986d0f6ee5231e76c913cf467f39.tar.gz
vaadin-framework-511a2b97c27f986d0f6ee5231e76c913cf467f39.zip
Started a major refactoring: removed terminal.web, added terminal.gwt.server. Refactoring is not even nearly complete, but can already replace old web terminal implementation
svn changeset:1864/svn branch:trunk
Diffstat (limited to 'src/com/itmill/toolkit/terminal/gwt/server/ServletMultipartRequest.java')
-rw-r--r--src/com/itmill/toolkit/terminal/gwt/server/ServletMultipartRequest.java139
1 files changed, 139 insertions, 0 deletions
diff --git a/src/com/itmill/toolkit/terminal/gwt/server/ServletMultipartRequest.java b/src/com/itmill/toolkit/terminal/gwt/server/ServletMultipartRequest.java
new file mode 100644
index 0000000000..a0352e5944
--- /dev/null
+++ b/src/com/itmill/toolkit/terminal/gwt/server/ServletMultipartRequest.java
@@ -0,0 +1,139 @@
+/* *************************************************************************
+
+ IT Mill Toolkit
+
+ Development of Browser User Interfaces Made Easy
+
+ Copyright (C) 2000-2006 IT Mill Ltd
+
+ *************************************************************************
+
+ This product is distributed under commercial license that can be found
+ from the product package on license.pdf. Use of this product might
+ require purchasing a commercial license from IT Mill Ltd. For guidelines
+ on usage, see licensing-guidelines.html
+
+ *************************************************************************
+
+ For more information, contact:
+
+ IT Mill Ltd phone: +358 2 4802 7180
+ Ruukinkatu 2-4 fax: +358 2 4802 7181
+ 20540, Turku email: info@itmill.com
+ Finland company www: www.itmill.com
+
+ Primary source for information and releases: www.itmill.com
+
+ ********************************************************************** */
+
+package com.itmill.toolkit.terminal.gwt.server;
+
+import java.io.IOException;
+
+import javax.servlet.http.HttpServletRequest;
+
+/**
+ * This class wraps the MultipartRequest class by Jason Pell for the Servlet
+ * environment.
+ *
+ * @author IT Mill Ltd
+ * @version
+ * @VERSION@
+ * @since 3.0
+ */
+public class ServletMultipartRequest extends MultipartRequest {
+ /**
+ * Constructor wrapper, unwraps the InputStream, content type and content
+ * length from the servlet request object.
+ *
+ * @param request
+ * the HttpServletRequest will be used to initialise the
+ * MultipartRequest super class.
+ * @param strSaveDirectory
+ * the temporary directory to save the file from where they can
+ * then be moved to wherever by the calling process. <b>If you
+ * specify <u>null</u> for this parameter, then any files
+ * uploaded will be silently ignored.</B>
+ *
+ * @throws IllegalArgumentException
+ * If the request.getContentType() does not contain a
+ * Content-Type of "multipart/form-data" or the boundary is not
+ * found.
+ * @throws IOException
+ * If the request.getContentLength() is higher than
+ * MAX_READ_BYTES or strSaveDirectory is invalid or cannot be
+ * written to.
+ *
+ * @see MultipartRequest#MAX_READ_BYTES
+ */
+ public ServletMultipartRequest(HttpServletRequest request,
+ String strSaveDirectory) throws IllegalArgumentException,
+ IOException {
+ super(null, request.getContentType(), request.getContentLength(),
+ request.getInputStream(), strSaveDirectory,
+ MultipartRequest.MAX_READ_BYTES);
+ }
+
+ /**
+ * Constructor wrapper, unwraps the InputStream, content type and content
+ * lenght from the servlet request object. Also allow to explicitly set the
+ * max permissable length of the request.
+ *
+ * @param request
+ * the HttpServletRequest will be used to initialise the
+ * MultipartRequest super class.
+ * @param strSaveDirectory
+ * the temporary directory to save the file from where they can
+ * then be moved to wherever by the calling process. <b>If you
+ * specify <u>null</u> for this parameter, then any files
+ * uploaded will be silently ignored.</B>
+ * @param intMaxReadBytes
+ * Overrides the MAX_BYTES_READ value, to allow arbitrarily long
+ * files.
+ *
+ * @throws IllegalArgumentException
+ * If the request.getContentType() does not contain a
+ * Content-Type of "multipart/form-data" or the boundary is not
+ * found.
+ * @throws IOException
+ * If the request.getContentLength() is higher than
+ * MAX_READ_BYTES or strSaveDirectory is invalid or cannot be
+ * written to.
+ *
+ * @see MultipartRequest#MAX_READ_BYTES
+ */
+ public ServletMultipartRequest(HttpServletRequest request,
+ String strSaveDirectory, int intMaxReadBytes)
+ throws IllegalArgumentException, IOException {
+ super(null, request.getContentType(), request.getContentLength(),
+ request.getInputStream(), strSaveDirectory, intMaxReadBytes);
+ }
+
+ /**
+ * Constructor wrapper for loading the request into memory rather than
+ * temp-file.
+ *
+ * @param request
+ * the HttpServletRequest will be used to initialise the
+ * MultipartRequest super class.
+ * @param intMaxReadBytes
+ * Overrides the MAX_BYTES_READ value, to allow arbitrarily long
+ * files.
+ *
+ * @throws IllegalArgumentException
+ * If the request.getContentType() does not contain a
+ * Content-Type of "multipart/form-data" or the boundary is not
+ * found.
+ * @throws IOException
+ * If the request.getContentLength() is higher than
+ * MAX_READ_BYTES or strSaveDirectory is invalid or cannot be
+ * written to.
+ *
+ * @see MultipartRequest#MAX_READ_BYTES
+ */
+ public ServletMultipartRequest(HttpServletRequest request,
+ int intMaxReadBytes) throws IllegalArgumentException, IOException {
+ super(null, request.getContentType(), request.getContentLength(),
+ request.getInputStream(), intMaxReadBytes);
+ }
+}