You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@struts.apache.org by lu...@apache.org on 2014/08/01 13:48:44 UTC

git commit: WW-4308 Extracts method and increases visibility to allow subclassing

Repository: struts
Updated Branches:
  refs/heads/develop 09012d7e5 -> 1dd873078


WW-4308 Extracts method and increases visibility to allow subclassing


Project: http://git-wip-us.apache.org/repos/asf/struts/repo
Commit: http://git-wip-us.apache.org/repos/asf/struts/commit/1dd87307
Tree: http://git-wip-us.apache.org/repos/asf/struts/tree/1dd87307
Diff: http://git-wip-us.apache.org/repos/asf/struts/diff/1dd87307

Branch: refs/heads/develop
Commit: 1dd8730781eac4e9ea9b114ad110047d2f1808e2
Parents: 09012d7
Author: Lukasz Lenart <lu...@apache.org>
Authored: Fri Aug 1 13:47:09 2014 +0200
Committer: Lukasz Lenart <lu...@apache.org>
Committed: Fri Aug 1 13:47:09 2014 +0200

----------------------------------------------------------------------
 .../multipart/JakartaMultiPartRequest.java       | 19 ++++++++++++-------
 1 file changed, 12 insertions(+), 7 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/struts/blob/1dd87307/core/src/main/java/org/apache/struts2/dispatcher/multipart/JakartaMultiPartRequest.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/struts2/dispatcher/multipart/JakartaMultiPartRequest.java b/core/src/main/java/org/apache/struts2/dispatcher/multipart/JakartaMultiPartRequest.java
index 1d7ec36..eecec0e 100644
--- a/core/src/main/java/org/apache/struts2/dispatcher/multipart/JakartaMultiPartRequest.java
+++ b/core/src/main/java/org/apache/struts2/dispatcher/multipart/JakartaMultiPartRequest.java
@@ -123,7 +123,7 @@ public class JakartaMultiPartRequest implements MultiPartRequest {
         return LocalizedTextUtil.findText(this.getClass(), errorKey, defaultLocale, e.getMessage(), args);
     }
 
-    private void processUpload(HttpServletRequest request, String saveDir) throws FileUploadException, UnsupportedEncodingException {
+    protected void processUpload(HttpServletRequest request, String saveDir) throws FileUploadException, UnsupportedEncodingException {
         for (FileItem item : parseRequest(request, saveDir)) {
             if (LOG.isDebugEnabled()) {
                 LOG.debug("Found item " + item.getFieldName());
@@ -136,7 +136,7 @@ public class JakartaMultiPartRequest implements MultiPartRequest {
         }
     }
 
-    private void processFileField(FileItem item) {
+    protected void processFileField(FileItem item) {
         if (LOG.isDebugEnabled()) {
             LOG.debug("Item is a file upload");
         }
@@ -158,7 +158,7 @@ public class JakartaMultiPartRequest implements MultiPartRequest {
         files.put(item.getFieldName(), values);
     }
 
-    private void processNormalFormField(FileItem item, String charset) throws UnsupportedEncodingException {
+    protected void processNormalFormField(FileItem item, String charset) throws UnsupportedEncodingException {
         if (LOG.isDebugEnabled()) {
             LOG.debug("Item is a normal form field");
         }
@@ -182,14 +182,19 @@ public class JakartaMultiPartRequest implements MultiPartRequest {
         item.delete();
     }
 
-    private List<FileItem> parseRequest(HttpServletRequest servletRequest, String saveDir) throws FileUploadException {
+    protected List<FileItem> parseRequest(HttpServletRequest servletRequest, String saveDir) throws FileUploadException {
         DiskFileItemFactory fac = createDiskFileItemFactory(saveDir);
+        ServletFileUpload upload = createServletFileUpload(fac);
+        return upload.parseRequest(createRequestContext(servletRequest));
+    }
+
+    protected ServletFileUpload createServletFileUpload(DiskFileItemFactory fac) {
         ServletFileUpload upload = new ServletFileUpload(fac);
         upload.setSizeMax(maxSize);
-        return upload.parseRequest(createRequestContext(servletRequest));
+        return upload;
     }
 
-    private DiskFileItemFactory createDiskFileItemFactory(String saveDir) {
+    protected DiskFileItemFactory createDiskFileItemFactory(String saveDir) {
         DiskFileItemFactory fac = new DiskFileItemFactory();
         // Make sure that the data is written to file
         fac.setSizeThreshold(0);
@@ -350,7 +355,7 @@ public class JakartaMultiPartRequest implements MultiPartRequest {
      * @param req the request.
      * @return a new request context.
      */
-    private RequestContext createRequestContext(final HttpServletRequest req) {
+    protected RequestContext createRequestContext(final HttpServletRequest req) {
         return new RequestContext() {
             public String getCharacterEncoding() {
                 return req.getCharacterEncoding();