This is an automated email from the ASF dual-hosted git repository.

ggregory pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/commons-fileupload.git


The following commit(s) were added to refs/heads/master by this push:
     new ad9a1df  Refactor for testing both Javax and Jakarta
ad9a1df is described below

commit ad9a1df99e54897eb8035c5c77abbd6aac501cf0
Author: Gary Gregory <garydgreg...@gmail.com>
AuthorDate: Mon May 22 14:19:45 2023 -0400

    Refactor for testing both Javax and Jakarta
---
 .../org/apache/commons/fileupload2/FileUpload.java |  20 +-
 .../org/apache/commons/fileupload2}/SizesTest.java |  58 ++--
 .../fileupload2/jakarta/JakartaSizesTest.java      |  45 ++++
 .../jakarta}/MockHttpServletRequest.java           | 291 ++++++++++++++-------
 .../commons/fileupload2/javax/JavaxSizesTest.java  |  45 ++++
 .../fileupload2/javax/MockHttpServletRequest.java  | 167 ++++++------
 .../commons/fileupload2/javax/StreamingTest.java   |   4 +-
 7 files changed, 404 insertions(+), 226 deletions(-)

diff --git 
a/commons-fileupload2-core/src/main/java/org/apache/commons/fileupload2/FileUpload.java
 
b/commons-fileupload2-core/src/main/java/org/apache/commons/fileupload2/FileUpload.java
index ce45d75..32753cc 100644
--- 
a/commons-fileupload2-core/src/main/java/org/apache/commons/fileupload2/FileUpload.java
+++ 
b/commons-fileupload2-core/src/main/java/org/apache/commons/fileupload2/FileUpload.java
@@ -69,16 +69,6 @@ public abstract class FileUpload<T> extends 
AbstractFileUpload {
         return fileItemFactory;
     }
 
-    /**
-     * Sets the factory class to use when creating file items.
-     *
-     * @param factory The factory class for new file items.
-     */
-    @Override
-    public void setFileItemFactory(final FileItemFactory factory) {
-        this.fileItemFactory = factory;
-    }
-
     /**
      * Gets a file item iterator.
      *
@@ -109,4 +99,14 @@ public abstract class FileUpload<T> extends 
AbstractFileUpload {
      */
     public abstract List<FileItem> parseRequest(T request) throws 
FileUploadException;
 
+    /**
+     * Sets the factory class to use when creating file items.
+     *
+     * @param factory The factory class for new file items.
+     */
+    @Override
+    public void setFileItemFactory(final FileItemFactory factory) {
+        this.fileItemFactory = factory;
+    }
+
 }
diff --git 
a/commons-fileupload2-javax/src/test/java/org/apache/commons/fileupload2/javax/SizesTest.java
 
b/commons-fileupload2-core/src/test/java/org/apache/commons/fileupload2/SizesTest.java
similarity index 76%
rename from 
commons-fileupload2-javax/src/test/java/org/apache/commons/fileupload2/javax/SizesTest.java
rename to 
commons-fileupload2-core/src/test/java/org/apache/commons/fileupload2/SizesTest.java
index 7d14d16..86d85b6 100644
--- 
a/commons-fileupload2-javax/src/test/java/org/apache/commons/fileupload2/javax/SizesTest.java
+++ 
b/commons-fileupload2-core/src/test/java/org/apache/commons/fileupload2/SizesTest.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.commons.fileupload2.javax;
+package org.apache.commons.fileupload2;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
 import static org.junit.jupiter.api.Assertions.assertFalse;
@@ -25,17 +25,8 @@ import static org.junit.jupiter.api.Assertions.fail;
 import java.io.ByteArrayOutputStream;
 import java.io.IOException;
 import java.io.InputStream;
-import java.nio.charset.StandardCharsets;
 import java.util.List;
 
-import javax.servlet.http.HttpServletRequest;
-
-import org.apache.commons.fileupload2.Constants;
-import org.apache.commons.fileupload2.FileItem;
-import org.apache.commons.fileupload2.FileItemIterator;
-import org.apache.commons.fileupload2.FileItemStream;
-import org.apache.commons.fileupload2.FileUploadException;
-import org.apache.commons.fileupload2.disk.DiskFileItemFactory;
 import org.apache.commons.fileupload2.pub.FileUploadByteCountLimitException;
 import org.apache.commons.fileupload2.pub.FileUploadSizeException;
 import org.apache.commons.io.IOUtils;
@@ -43,8 +34,15 @@ import org.junit.jupiter.api.Test;
 
 /**
  * Unit test for items with varying sizes.
+ *
+ * @param <F> The subclass of FileUpload.
+ * @param <R> The type of FileUpload request.
  */
-public class SizesTest {
+public abstract class SizesTest<F extends FileUpload<R>, R> {
+
+    protected abstract F newFileUpload();
+
+    protected abstract R newMockHttpServletRequest(String request, Integer 
overrideContenLength, Integer overrideReadLimit);
 
     /**
      * Checks, whether limiting the file size works.
@@ -62,25 +60,25 @@ public class SizesTest {
             "-----1234--\r\n";
         // @formatter:on
 
-        ServletFileUpload upload = new ServletFileUpload(new 
DiskFileItemFactory());
+        F upload = newFileUpload();
         upload.setFileSizeMax(-1);
-        HttpServletRequest req = new 
MockHttpServletRequest(request.getBytes(StandardCharsets.US_ASCII), 
Constants.CONTENT_TYPE);
+        R req = newMockHttpServletRequest(request, null, null);
         List<FileItem> fileItems = upload.parseRequest(req);
         assertEquals(1, fileItems.size());
         FileItem item = fileItems.get(0);
         assertEquals("This is the content of the file\n", new 
String(item.get()));
 
-        upload = new ServletFileUpload(new DiskFileItemFactory());
+        upload = newFileUpload();
         upload.setFileSizeMax(40);
-        req = new 
MockHttpServletRequest(request.getBytes(StandardCharsets.US_ASCII), 
Constants.CONTENT_TYPE);
+        req = newMockHttpServletRequest(request, null, null);
         fileItems = upload.parseRequest(req);
         assertEquals(1, fileItems.size());
         item = fileItems.get(0);
         assertEquals("This is the content of the file\n", new 
String(item.get()));
 
-        upload = new ServletFileUpload(new DiskFileItemFactory());
+        upload = newFileUpload();
         upload.setFileSizeMax(30);
-        req = new 
MockHttpServletRequest(request.getBytes(StandardCharsets.US_ASCII), 
Constants.CONTENT_TYPE);
+        req = newMockHttpServletRequest(request, null, null);
         try {
             upload.parseRequest(req);
             fail("Expected exception.");
@@ -106,26 +104,26 @@ public class SizesTest {
             "-----1234--\r\n";
         // @formatter:on
 
-        ServletFileUpload upload = new ServletFileUpload(new 
DiskFileItemFactory());
+        F upload = newFileUpload();
         upload.setFileSizeMax(-1);
-        HttpServletRequest req = new 
MockHttpServletRequest(request.getBytes(StandardCharsets.US_ASCII), 
Constants.CONTENT_TYPE);
+        R req = newMockHttpServletRequest(request, null, null);
         List<FileItem> fileItems = upload.parseRequest(req);
         assertEquals(1, fileItems.size());
         FileItem item = fileItems.get(0);
         assertEquals("This is the content of the file\n", new 
String(item.get()));
 
-        upload = new ServletFileUpload(new DiskFileItemFactory());
+        upload = newFileUpload();
         upload.setFileSizeMax(40);
-        req = new 
MockHttpServletRequest(request.getBytes(StandardCharsets.US_ASCII), 
Constants.CONTENT_TYPE);
+        req = newMockHttpServletRequest(request, null, null);
         fileItems = upload.parseRequest(req);
         assertEquals(1, fileItems.size());
         item = fileItems.get(0);
         assertEquals("This is the content of the file\n", new 
String(item.get()));
 
         // provided Content-Length is larger than the FileSizeMax -> handled 
by ctor
-        upload = new ServletFileUpload(new DiskFileItemFactory());
+        upload = newFileUpload();
         upload.setFileSizeMax(5);
-        req = new 
MockHttpServletRequest(request.getBytes(StandardCharsets.US_ASCII), 
Constants.CONTENT_TYPE);
+        req = newMockHttpServletRequest(request, null, null);
         try {
             upload.parseRequest(req);
             fail("Expected exception.");
@@ -134,9 +132,9 @@ public class SizesTest {
         }
 
         // provided Content-Length is wrong, actual content is larger -> 
handled by LimitedInputStream
-        upload = new ServletFileUpload(new DiskFileItemFactory());
+        upload = newFileUpload();
         upload.setFileSizeMax(15);
-        req = new 
MockHttpServletRequest(request.getBytes(StandardCharsets.US_ASCII), 
Constants.CONTENT_TYPE);
+        req = newMockHttpServletRequest(request, null, null);
         try {
             upload.parseRequest(req);
             fail("Expected exception.");
@@ -168,11 +166,11 @@ public class SizesTest {
             "-----1234--\r\n";
         // @formatter:on
 
-        final ServletFileUpload upload = new ServletFileUpload(new 
DiskFileItemFactory());
+        final F upload = newFileUpload();
         upload.setFileSizeMax(-1);
         upload.setSizeMax(200);
 
-        final MockHttpServletRequest req = new 
MockHttpServletRequest(request.getBytes(StandardCharsets.US_ASCII), 
Constants.CONTENT_TYPE);
+        final R req = newMockHttpServletRequest(request, null, null);
         try {
             upload.parseRequest(req);
             fail("Expected exception.");
@@ -201,7 +199,7 @@ public class SizesTest {
             "-----1234--\r\n";
         // @formatter:on
 
-        final ServletFileUpload upload = new ServletFileUpload(new 
DiskFileItemFactory());
+        final F upload = newFileUpload();
         upload.setFileSizeMax(-1);
         upload.setSizeMax(300);
 
@@ -209,9 +207,7 @@ public class SizesTest {
         // set the read limit to 10 to simulate a "real" stream
         // otherwise the buffer would be immediately filled
 
-        final MockHttpServletRequest req = new 
MockHttpServletRequest(request.getBytes(StandardCharsets.US_ASCII), 
Constants.CONTENT_TYPE);
-        req.setContentLength(-1);
-        req.setReadLimit(10);
+        final R req = newMockHttpServletRequest(request, -1, 10);
 
         final FileItemIterator it = upload.getItemIterator(req);
         assertTrue(it.hasNext());
diff --git 
a/commons-fileupload2-jakarta/src/test/java/org/apache/commons/fileupload2/jakarta/JakartaSizesTest.java
 
b/commons-fileupload2-jakarta/src/test/java/org/apache/commons/fileupload2/jakarta/JakartaSizesTest.java
new file mode 100644
index 0000000..9a27d18
--- /dev/null
+++ 
b/commons-fileupload2-jakarta/src/test/java/org/apache/commons/fileupload2/jakarta/JakartaSizesTest.java
@@ -0,0 +1,45 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.commons.fileupload2.jakarta;
+
+import java.io.ByteArrayInputStream;
+import java.nio.charset.StandardCharsets;
+
+import org.apache.commons.fileupload2.Constants;
+import org.apache.commons.fileupload2.SizesTest;
+import org.apache.commons.fileupload2.disk.DiskFileItemFactory;
+
+import jakarta.servlet.http.HttpServletRequest;
+
+/**
+ * Unit test for items with varying sizes.
+ */
+public class JakartaSizesTest extends SizesTest<JakartaServletFileUpload, 
HttpServletRequest> {
+
+    @Override
+    protected JakartaServletFileUpload newFileUpload() {
+        return new JakartaServletFileUpload(new DiskFileItemFactory());
+    }
+
+    @Override
+    protected MockHttpServletRequest newMockHttpServletRequest(final String 
request, final Integer overrideContenLength, final Integer overrideReadLimit) {
+        final byte[] requestData = request.getBytes(StandardCharsets.US_ASCII);
+        return new MockHttpServletRequest(new 
ByteArrayInputStream(requestData), overrideContenLength != null ? 
overrideContenLength : requestData.length,
+                Constants.CONTENT_TYPE, overrideReadLimit != null ? 
overrideReadLimit : -1);
+    }
+
+}
diff --git 
a/commons-fileupload2-javax/src/test/java/org/apache/commons/fileupload2/javax/MockHttpServletRequest.java
 
b/commons-fileupload2-jakarta/src/test/java/org/apache/commons/fileupload2/jakarta/MockHttpServletRequest.java
similarity index 54%
copy from 
commons-fileupload2-javax/src/test/java/org/apache/commons/fileupload2/javax/MockHttpServletRequest.java
copy to 
commons-fileupload2-jakarta/src/test/java/org/apache/commons/fileupload2/jakarta/MockHttpServletRequest.java
index 32fe8a1..d68cf08 100644
--- 
a/commons-fileupload2-javax/src/test/java/org/apache/commons/fileupload2/javax/MockHttpServletRequest.java
+++ 
b/commons-fileupload2-jakarta/src/test/java/org/apache/commons/fileupload2/jakarta/MockHttpServletRequest.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.commons.fileupload2.javax;
+package org.apache.commons.fileupload2.jakarta;
 
 import java.io.BufferedReader;
 import java.io.ByteArrayInputStream;
@@ -22,21 +22,33 @@ import java.io.IOException;
 import java.io.InputStream;
 import java.io.UnsupportedEncodingException;
 import java.security.Principal;
+import java.util.Collection;
 import java.util.Enumeration;
+import java.util.HashMap;
 import java.util.Locale;
 import java.util.Map;
 
-import javax.servlet.RequestDispatcher;
-import javax.servlet.ServletInputStream;
-import javax.servlet.http.Cookie;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpSession;
-
 import org.apache.commons.fileupload2.AbstractFileUpload;
 
+import jakarta.servlet.AsyncContext;
+import jakarta.servlet.DispatcherType;
+import jakarta.servlet.ReadListener;
+import jakarta.servlet.RequestDispatcher;
+import jakarta.servlet.ServletContext;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.ServletInputStream;
+import jakarta.servlet.ServletRequest;
+import jakarta.servlet.ServletResponse;
+import jakarta.servlet.http.Cookie;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
+import jakarta.servlet.http.HttpSession;
+import jakarta.servlet.http.HttpUpgradeHandler;
+import jakarta.servlet.http.Part;
+
 public class MockHttpServletRequest implements HttpServletRequest {
 
-    private static class MyServletInputStream extends 
javax.servlet.ServletInputStream {
+    private static class MyServletInputStream extends ServletInputStream {
 
         private final InputStream inputStream;
         private final int readLimit;
@@ -49,6 +61,18 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
             this.readLimit = readLimit;
         }
 
+        @Override
+        public boolean isFinished() {
+            // TODO Auto-generated method stub
+            return false;
+        }
+
+        @Override
+        public boolean isReady() {
+            // TODO Auto-generated method stub
+            return false;
+        }
+
         @Override
         public int read() throws IOException {
             return inputStream.read();
@@ -62,37 +86,62 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
             return inputStream.read(b, off, len);
         }
 
+        @Override
+        public void setReadListener(final ReadListener readListener) {
+            // TODO Auto-generated method stub
+
+        }
+
     }
 
-    private final InputStream mmRequestData;
+    private final InputStream requestInputStream;
 
-    private long length;
+    private final long requestLength;
 
-    private final String mStrContentType;
+    private final String contentType;
 
-    private int readLimit = -1;
+    private final int readLimit;
 
-    private final Map<String, String> mHeaders = new java.util.HashMap<>();
+    private final Map<String, String> headers = new HashMap<>();
 
     /**
      * Creates a new instance with the given request data and content type.
      */
-    public MockHttpServletRequest(final byte[] requestData, final String 
strContentType) {
-        this(new ByteArrayInputStream(requestData), requestData.length, 
strContentType);
+    public MockHttpServletRequest(final byte[] requestData, final String 
contentType) {
+        this(new ByteArrayInputStream(requestData), requestData.length, 
contentType, -1);
     }
 
     /**
      * Creates a new instance with the given request data and content type.
      */
-    public MockHttpServletRequest(final InputStream requestData, final long 
requestLength, final String strContentType) {
-        mmRequestData = requestData;
-        length = requestLength;
-        mStrContentType = strContentType;
-        mHeaders.put(AbstractFileUpload.CONTENT_TYPE, strContentType);
+    public MockHttpServletRequest(final InputStream requestInputStream, final 
long requestLength, final String contentType, final int readLimit) {
+        this.requestInputStream = requestInputStream;
+        this.requestLength = requestLength;
+        this.contentType = contentType;
+        this.headers.put(AbstractFileUpload.CONTENT_TYPE, contentType);
+        this.readLimit = readLimit;
+    }
+
+    @Override
+    public boolean authenticate(final HttpServletResponse response) throws 
IOException, ServletException {
+        // TODO Auto-generated method stub
+        return false;
+    }
+
+    @Override
+    public String changeSessionId() {
+        // TODO Auto-generated method stub
+        return null;
+    }
+
+    @Override
+    public AsyncContext getAsyncContext() {
+        // TODO Auto-generated method stub
+        return null;
     }
 
     /**
-     * @see javax.servlet.ServletRequest#getAttribute(String)
+     * @see ServletRequest#getAttribute(String)
      */
     @Override
     public Object getAttribute(final String arg0) {
@@ -100,7 +149,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.ServletRequest#getAttributeNames()
+     * @see ServletRequest#getAttributeNames()
      */
     @Override
     public Enumeration<String> getAttributeNames() {
@@ -108,7 +157,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.http.HttpServletRequest#getAuthType()
+     * @see HttpServletRequest#getAuthType()
      */
     @Override
     public String getAuthType() {
@@ -116,7 +165,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.ServletRequest#getCharacterEncoding()
+     * @see ServletRequest#getCharacterEncoding()
      */
     @Override
     public String getCharacterEncoding() {
@@ -124,33 +173,39 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.ServletRequest#getContentLength()
+     * @see ServletRequest#getContentLength()
      */
     @Override
     public int getContentLength() {
         int iLength;
 
-        if (null == mmRequestData) {
+        if (null == requestInputStream) {
             iLength = -1;
         } else {
-            if (length > Integer.MAX_VALUE) {
-                throw new RuntimeException("Value '" + length + "' is too 
large to be converted to int");
+            if (requestLength > Integer.MAX_VALUE) {
+                throw new RuntimeException("Value '" + requestLength + "' is 
too large to be converted to int");
             }
-            iLength = (int) length;
+            iLength = (int) requestLength;
         }
         return iLength;
     }
 
+    @Override
+    public long getContentLengthLong() {
+        // TODO Auto-generated method stub
+        return 0;
+    }
+
     /**
-     * @see javax.servlet.ServletRequest#getContentType()
+     * @see ServletRequest#getContentType()
      */
     @Override
     public String getContentType() {
-        return mStrContentType;
+        return contentType;
     }
 
     /**
-     * @see javax.servlet.http.HttpServletRequest#getContextPath()
+     * @see HttpServletRequest#getContextPath()
      */
     @Override
     public String getContextPath() {
@@ -158,7 +213,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.http.HttpServletRequest#getCookies()
+     * @see HttpServletRequest#getCookies()
      */
     @Override
     public Cookie[] getCookies() {
@@ -166,23 +221,29 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.http.HttpServletRequest#getDateHeader(String)
+     * @see HttpServletRequest#getDateHeader(String)
      */
     @Override
     public long getDateHeader(final String arg0) {
         return 0;
     }
 
+    @Override
+    public DispatcherType getDispatcherType() {
+        // TODO Auto-generated method stub
+        return null;
+    }
+
     /**
-     * @see javax.servlet.http.HttpServletRequest#getHeader(String)
+     * @see HttpServletRequest#getHeader(String)
      */
     @Override
     public String getHeader(final String headerName) {
-        return mHeaders.get(headerName);
+        return headers.get(headerName);
     }
 
     /**
-     * @see javax.servlet.http.HttpServletRequest#getHeaderNames()
+     * @see HttpServletRequest#getHeaderNames()
      */
     @Override
     public Enumeration<String> getHeaderNames() {
@@ -191,7 +252,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.http.HttpServletRequest#getHeaders(String)
+     * @see HttpServletRequest#getHeaders(String)
      */
     @Override
     public Enumeration<String> getHeaders(final String arg0) {
@@ -200,15 +261,15 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.ServletRequest#getInputStream()
+     * @see ServletRequest#getInputStream()
      */
     @Override
     public ServletInputStream getInputStream() throws IOException {
-        return new MyServletInputStream(mmRequestData, readLimit);
+        return new MyServletInputStream(requestInputStream, readLimit);
     }
 
     /**
-     * @see javax.servlet.http.HttpServletRequest#getIntHeader(String)
+     * @see HttpServletRequest#getIntHeader(String)
      */
     @Override
     public int getIntHeader(final String arg0) {
@@ -216,7 +277,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.ServletRequest#getLocalAddr()
+     * @see ServletRequest#getLocalAddr()
      */
     @Override
     @SuppressWarnings("javadoc") // This is a Servlet 2.4 method
@@ -225,7 +286,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.ServletRequest#getLocale()
+     * @see ServletRequest#getLocale()
      */
     @Override
     public Locale getLocale() {
@@ -233,7 +294,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.ServletRequest#getLocales()
+     * @see ServletRequest#getLocales()
      */
     @Override
     public Enumeration<Locale> getLocales() {
@@ -241,7 +302,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.ServletRequest#getLocalName()
+     * @see ServletRequest#getLocalName()
      */
     @Override
     @SuppressWarnings("javadoc") // This is a Servlet 2.4 method
@@ -250,7 +311,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.ServletRequest#getLocalPort()
+     * @see ServletRequest#getLocalPort()
      */
     @Override
     @SuppressWarnings("javadoc") // This is a Servlet 2.4 method
@@ -259,7 +320,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.http.HttpServletRequest#getMethod()
+     * @see HttpServletRequest#getMethod()
      */
     @Override
     public String getMethod() {
@@ -267,7 +328,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.ServletRequest#getParameter(String)
+     * @see ServletRequest#getParameter(String)
      */
     @Override
     public String getParameter(final String arg0) {
@@ -275,7 +336,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.ServletRequest#getParameterMap()
+     * @see ServletRequest#getParameterMap()
      */
     @Override
     public Map<String, String[]> getParameterMap() {
@@ -283,7 +344,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.ServletRequest#getParameterNames()
+     * @see ServletRequest#getParameterNames()
      */
     @Override
     public Enumeration<String> getParameterNames() {
@@ -291,15 +352,27 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.ServletRequest#getParameterValues(String)
+     * @see ServletRequest#getParameterValues(String)
      */
     @Override
     public String[] getParameterValues(final String arg0) {
         return null;
     }
 
+    @Override
+    public Part getPart(final String name) throws IOException, 
ServletException {
+        // TODO Auto-generated method stub
+        return null;
+    }
+
+    @Override
+    public Collection<Part> getParts() throws IOException, ServletException {
+        // TODO Auto-generated method stub
+        return null;
+    }
+
     /**
-     * @see javax.servlet.http.HttpServletRequest#getPathInfo()
+     * @see HttpServletRequest#getPathInfo()
      */
     @Override
     public String getPathInfo() {
@@ -307,7 +380,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.http.HttpServletRequest#getPathTranslated()
+     * @see HttpServletRequest#getPathTranslated()
      */
     @Override
     public String getPathTranslated() {
@@ -315,7 +388,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.ServletRequest#getProtocol()
+     * @see ServletRequest#getProtocol()
      */
     @Override
     public String getProtocol() {
@@ -323,7 +396,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.http.HttpServletRequest#getQueryString()
+     * @see HttpServletRequest#getQueryString()
      */
     @Override
     public String getQueryString() {
@@ -331,7 +404,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.ServletRequest#getReader()
+     * @see ServletRequest#getReader()
      */
     @Override
     public BufferedReader getReader() throws IOException {
@@ -339,7 +412,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.ServletRequest#getRealPath(String)
+     * @see ServletRequest#getRealPath(String)
      * @deprecated
      */
     @Override
@@ -349,7 +422,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.ServletRequest#getRemoteAddr()
+     * @see ServletRequest#getRemoteAddr()
      */
     @Override
     public String getRemoteAddr() {
@@ -357,7 +430,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.ServletRequest#getRemoteHost()
+     * @see ServletRequest#getRemoteHost()
      */
     @Override
     public String getRemoteHost() {
@@ -365,7 +438,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.ServletRequest#getRemotePort()
+     * @see ServletRequest#getRemotePort()
      */
     @Override
     @SuppressWarnings("javadoc") // This is a Servlet 2.4 method
@@ -374,7 +447,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.http.HttpServletRequest#getRemoteUser()
+     * @see HttpServletRequest#getRemoteUser()
      */
     @Override
     public String getRemoteUser() {
@@ -382,7 +455,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.ServletRequest#getRequestDispatcher(String)
+     * @see ServletRequest#getRequestDispatcher(String)
      */
     @Override
     public RequestDispatcher getRequestDispatcher(final String arg0) {
@@ -390,7 +463,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.http.HttpServletRequest#getRequestedSessionId()
+     * @see HttpServletRequest#getRequestedSessionId()
      */
     @Override
     public String getRequestedSessionId() {
@@ -398,7 +471,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.http.HttpServletRequest#getRequestURI()
+     * @see HttpServletRequest#getRequestURI()
      */
     @Override
     public String getRequestURI() {
@@ -406,7 +479,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.http.HttpServletRequest#getRequestURL()
+     * @see HttpServletRequest#getRequestURL()
      */
     @Override
     public StringBuffer getRequestURL() {
@@ -414,7 +487,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.ServletRequest#getScheme()
+     * @see ServletRequest#getScheme()
      */
     @Override
     public String getScheme() {
@@ -422,7 +495,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.ServletRequest#getServerName()
+     * @see ServletRequest#getServerName()
      */
     @Override
     public String getServerName() {
@@ -430,15 +503,21 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.ServletRequest#getServerPort()
+     * @see ServletRequest#getServerPort()
      */
     @Override
     public int getServerPort() {
         return 0;
     }
 
+    @Override
+    public ServletContext getServletContext() {
+        // TODO Auto-generated method stub
+        return null;
+    }
+
     /**
-     * @see javax.servlet.http.HttpServletRequest#getServletPath()
+     * @see HttpServletRequest#getServletPath()
      */
     @Override
     public String getServletPath() {
@@ -446,7 +525,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.http.HttpServletRequest#getSession()
+     * @see HttpServletRequest#getSession()
      */
     @Override
     public HttpSession getSession() {
@@ -454,7 +533,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.http.HttpServletRequest#getSession(boolean)
+     * @see HttpServletRequest#getSession(boolean)
      */
     @Override
     public HttpSession getSession(final boolean arg0) {
@@ -462,15 +541,27 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.http.HttpServletRequest#getUserPrincipal()
+     * @see HttpServletRequest#getUserPrincipal()
      */
     @Override
     public Principal getUserPrincipal() {
         return null;
     }
 
+    @Override
+    public boolean isAsyncStarted() {
+        // TODO Auto-generated method stub
+        return false;
+    }
+
+    @Override
+    public boolean isAsyncSupported() {
+        // TODO Auto-generated method stub
+        return false;
+    }
+
     /**
-     * @see 
javax.servlet.http.HttpServletRequest#isRequestedSessionIdFromCookie()
+     * @see HttpServletRequest#isRequestedSessionIdFromCookie()
      */
     @Override
     public boolean isRequestedSessionIdFromCookie() {
@@ -478,7 +569,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.http.HttpServletRequest#isRequestedSessionIdFromUrl()
+     * @see HttpServletRequest#isRequestedSessionIdFromUrl()
      * @deprecated
      */
     @Override
@@ -488,7 +579,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.http.HttpServletRequest#isRequestedSessionIdFromURL()
+     * @see HttpServletRequest#isRequestedSessionIdFromURL()
      */
     @Override
     public boolean isRequestedSessionIdFromURL() {
@@ -496,7 +587,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.http.HttpServletRequest#isRequestedSessionIdValid()
+     * @see HttpServletRequest#isRequestedSessionIdValid()
      */
     @Override
     public boolean isRequestedSessionIdValid() {
@@ -504,7 +595,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.ServletRequest#isSecure()
+     * @see ServletRequest#isSecure()
      */
     @Override
     public boolean isSecure() {
@@ -512,48 +603,62 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.http.HttpServletRequest#isUserInRole(String)
+     * @see HttpServletRequest#isUserInRole(String)
      */
     @Override
     public boolean isUserInRole(final String arg0) {
         return false;
     }
 
+    @Override
+    public void login(final String username, final String password) throws 
ServletException {
+        // TODO Auto-generated method stub
+
+    }
+
+    @Override
+    public void logout() throws ServletException {
+        // TODO Auto-generated method stub
+
+    }
+
     /**
-     * @see javax.servlet.ServletRequest#removeAttribute(String)
+     * @see ServletRequest#removeAttribute(String)
      */
     @Override
     public void removeAttribute(final String arg0) {
     }
 
     /**
-     * @see javax.servlet.ServletRequest#setAttribute(String, Object)
+     * @see ServletRequest#setAttribute(String, Object)
      */
     @Override
     public void setAttribute(final String arg0, final Object arg1) {
     }
 
     /**
-     * @see javax.servlet.ServletRequest#setCharacterEncoding(String)
+     * @see ServletRequest#setCharacterEncoding(String)
      */
     @Override
     public void setCharacterEncoding(final String arg0) throws 
UnsupportedEncodingException {
     }
 
-    /**
-     * For testing attack scenarios in SizesTest.
-     */
-    public void setContentLength(final long length) {
-        this.length = length;
+    @Override
+    public AsyncContext startAsync() throws IllegalStateException {
+        // TODO Auto-generated method stub
+        return null;
     }
 
-    /**
-     * Sets the read limit. This can be used to limit the number of bytes to 
read ahead.
-     *
-     * @param readLimit the read limit to use
-     */
-    public void setReadLimit(final int readLimit) {
-        this.readLimit = readLimit;
+    @Override
+    public AsyncContext startAsync(final ServletRequest servletRequest, final 
ServletResponse servletResponse) throws IllegalStateException {
+        // TODO Auto-generated method stub
+        return null;
+    }
+
+    @Override
+    public <T extends HttpUpgradeHandler> T upgrade(final Class<T> 
handlerClass) throws IOException, ServletException {
+        // TODO Auto-generated method stub
+        return null;
     }
 
 }
diff --git 
a/commons-fileupload2-javax/src/test/java/org/apache/commons/fileupload2/javax/JavaxSizesTest.java
 
b/commons-fileupload2-javax/src/test/java/org/apache/commons/fileupload2/javax/JavaxSizesTest.java
new file mode 100644
index 0000000..d75092e
--- /dev/null
+++ 
b/commons-fileupload2-javax/src/test/java/org/apache/commons/fileupload2/javax/JavaxSizesTest.java
@@ -0,0 +1,45 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.commons.fileupload2.javax;
+
+import java.io.ByteArrayInputStream;
+import java.nio.charset.StandardCharsets;
+
+import javax.servlet.http.HttpServletRequest;
+
+import org.apache.commons.fileupload2.Constants;
+import org.apache.commons.fileupload2.SizesTest;
+import org.apache.commons.fileupload2.disk.DiskFileItemFactory;
+
+/**
+ * Unit test for items with varying sizes.
+ */
+public class JavaxSizesTest extends SizesTest<ServletFileUpload, 
HttpServletRequest> {
+
+    @Override
+    protected ServletFileUpload newFileUpload() {
+        return new ServletFileUpload(new DiskFileItemFactory());
+    }
+
+    @Override
+    protected MockHttpServletRequest newMockHttpServletRequest(final String 
request, final Integer overrideContenLength, final Integer overrideReadLimit) {
+        final byte[] requestData = request.getBytes(StandardCharsets.US_ASCII);
+        return new MockHttpServletRequest(new 
ByteArrayInputStream(requestData), overrideContenLength != null ? 
overrideContenLength : requestData.length,
+                Constants.CONTENT_TYPE, overrideReadLimit != null ? 
overrideReadLimit : -1);
+    }
+
+}
diff --git 
a/commons-fileupload2-javax/src/test/java/org/apache/commons/fileupload2/javax/MockHttpServletRequest.java
 
b/commons-fileupload2-javax/src/test/java/org/apache/commons/fileupload2/javax/MockHttpServletRequest.java
index 32fe8a1..fc5993c 100644
--- 
a/commons-fileupload2-javax/src/test/java/org/apache/commons/fileupload2/javax/MockHttpServletRequest.java
+++ 
b/commons-fileupload2-javax/src/test/java/org/apache/commons/fileupload2/javax/MockHttpServletRequest.java
@@ -23,11 +23,13 @@ import java.io.InputStream;
 import java.io.UnsupportedEncodingException;
 import java.security.Principal;
 import java.util.Enumeration;
+import java.util.HashMap;
 import java.util.Locale;
 import java.util.Map;
 
 import javax.servlet.RequestDispatcher;
 import javax.servlet.ServletInputStream;
+import javax.servlet.ServletRequest;
 import javax.servlet.http.Cookie;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpSession;
@@ -36,7 +38,7 @@ import org.apache.commons.fileupload2.AbstractFileUpload;
 
 public class MockHttpServletRequest implements HttpServletRequest {
 
-    private static class MyServletInputStream extends 
javax.servlet.ServletInputStream {
+    private static class MyServletInputStream extends ServletInputStream {
 
         private final InputStream inputStream;
         private final int readLimit;
@@ -64,35 +66,36 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
 
     }
 
-    private final InputStream mmRequestData;
+    private final InputStream requestInputStream;
 
-    private long length;
+    private final long requestLength;
 
-    private final String mStrContentType;
+    private final String contentType;
 
-    private int readLimit = -1;
+    private final int readLimit;
 
-    private final Map<String, String> mHeaders = new java.util.HashMap<>();
+    private final Map<String, String> headers = new HashMap<>();
 
     /**
      * Creates a new instance with the given request data and content type.
      */
-    public MockHttpServletRequest(final byte[] requestData, final String 
strContentType) {
-        this(new ByteArrayInputStream(requestData), requestData.length, 
strContentType);
+    public MockHttpServletRequest(final byte[] requestData, final String 
contentType) {
+        this(new ByteArrayInputStream(requestData), requestData.length, 
contentType, -1);
     }
 
     /**
      * Creates a new instance with the given request data and content type.
      */
-    public MockHttpServletRequest(final InputStream requestData, final long 
requestLength, final String strContentType) {
-        mmRequestData = requestData;
-        length = requestLength;
-        mStrContentType = strContentType;
-        mHeaders.put(AbstractFileUpload.CONTENT_TYPE, strContentType);
+    public MockHttpServletRequest(final InputStream requestInputStream, final 
long requestLength, final String contentType, final int readLimit) {
+        this.requestInputStream = requestInputStream;
+        this.requestLength = requestLength;
+        this.contentType = contentType;
+        this.headers.put(AbstractFileUpload.CONTENT_TYPE, contentType);
+        this.readLimit = readLimit;
     }
 
     /**
-     * @see javax.servlet.ServletRequest#getAttribute(String)
+     * @see ServletRequest#getAttribute(String)
      */
     @Override
     public Object getAttribute(final String arg0) {
@@ -100,7 +103,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.ServletRequest#getAttributeNames()
+     * @see ServletRequest#getAttributeNames()
      */
     @Override
     public Enumeration<String> getAttributeNames() {
@@ -108,7 +111,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.http.HttpServletRequest#getAuthType()
+     * @see HttpServletRequest#getAuthType()
      */
     @Override
     public String getAuthType() {
@@ -116,7 +119,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.ServletRequest#getCharacterEncoding()
+     * @see ServletRequest#getCharacterEncoding()
      */
     @Override
     public String getCharacterEncoding() {
@@ -124,33 +127,33 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.ServletRequest#getContentLength()
+     * @see ServletRequest#getContentLength()
      */
     @Override
     public int getContentLength() {
         int iLength;
 
-        if (null == mmRequestData) {
+        if (null == requestInputStream) {
             iLength = -1;
         } else {
-            if (length > Integer.MAX_VALUE) {
-                throw new RuntimeException("Value '" + length + "' is too 
large to be converted to int");
+            if (requestLength > Integer.MAX_VALUE) {
+                throw new RuntimeException("Value '" + requestLength + "' is 
too large to be converted to int");
             }
-            iLength = (int) length;
+            iLength = (int) requestLength;
         }
         return iLength;
     }
 
     /**
-     * @see javax.servlet.ServletRequest#getContentType()
+     * @see ServletRequest#getContentType()
      */
     @Override
     public String getContentType() {
-        return mStrContentType;
+        return contentType;
     }
 
     /**
-     * @see javax.servlet.http.HttpServletRequest#getContextPath()
+     * @see HttpServletRequest#getContextPath()
      */
     @Override
     public String getContextPath() {
@@ -158,7 +161,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.http.HttpServletRequest#getCookies()
+     * @see HttpServletRequest#getCookies()
      */
     @Override
     public Cookie[] getCookies() {
@@ -166,7 +169,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.http.HttpServletRequest#getDateHeader(String)
+     * @see HttpServletRequest#getDateHeader(String)
      */
     @Override
     public long getDateHeader(final String arg0) {
@@ -174,15 +177,15 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.http.HttpServletRequest#getHeader(String)
+     * @see HttpServletRequest#getHeader(String)
      */
     @Override
     public String getHeader(final String headerName) {
-        return mHeaders.get(headerName);
+        return headers.get(headerName);
     }
 
     /**
-     * @see javax.servlet.http.HttpServletRequest#getHeaderNames()
+     * @see HttpServletRequest#getHeaderNames()
      */
     @Override
     public Enumeration<String> getHeaderNames() {
@@ -191,7 +194,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.http.HttpServletRequest#getHeaders(String)
+     * @see HttpServletRequest#getHeaders(String)
      */
     @Override
     public Enumeration<String> getHeaders(final String arg0) {
@@ -200,15 +203,15 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.ServletRequest#getInputStream()
+     * @see ServletRequest#getInputStream()
      */
     @Override
     public ServletInputStream getInputStream() throws IOException {
-        return new MyServletInputStream(mmRequestData, readLimit);
+        return new MyServletInputStream(requestInputStream, readLimit);
     }
 
     /**
-     * @see javax.servlet.http.HttpServletRequest#getIntHeader(String)
+     * @see HttpServletRequest#getIntHeader(String)
      */
     @Override
     public int getIntHeader(final String arg0) {
@@ -216,7 +219,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.ServletRequest#getLocalAddr()
+     * @see ServletRequest#getLocalAddr()
      */
     @Override
     @SuppressWarnings("javadoc") // This is a Servlet 2.4 method
@@ -225,7 +228,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.ServletRequest#getLocale()
+     * @see ServletRequest#getLocale()
      */
     @Override
     public Locale getLocale() {
@@ -233,7 +236,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.ServletRequest#getLocales()
+     * @see ServletRequest#getLocales()
      */
     @Override
     public Enumeration<Locale> getLocales() {
@@ -241,7 +244,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.ServletRequest#getLocalName()
+     * @see ServletRequest#getLocalName()
      */
     @Override
     @SuppressWarnings("javadoc") // This is a Servlet 2.4 method
@@ -250,7 +253,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.ServletRequest#getLocalPort()
+     * @see ServletRequest#getLocalPort()
      */
     @Override
     @SuppressWarnings("javadoc") // This is a Servlet 2.4 method
@@ -259,7 +262,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.http.HttpServletRequest#getMethod()
+     * @see HttpServletRequest#getMethod()
      */
     @Override
     public String getMethod() {
@@ -267,7 +270,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.ServletRequest#getParameter(String)
+     * @see ServletRequest#getParameter(String)
      */
     @Override
     public String getParameter(final String arg0) {
@@ -275,7 +278,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.ServletRequest#getParameterMap()
+     * @see ServletRequest#getParameterMap()
      */
     @Override
     public Map<String, String[]> getParameterMap() {
@@ -283,7 +286,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.ServletRequest#getParameterNames()
+     * @see ServletRequest#getParameterNames()
      */
     @Override
     public Enumeration<String> getParameterNames() {
@@ -291,7 +294,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.ServletRequest#getParameterValues(String)
+     * @see ServletRequest#getParameterValues(String)
      */
     @Override
     public String[] getParameterValues(final String arg0) {
@@ -299,7 +302,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.http.HttpServletRequest#getPathInfo()
+     * @see HttpServletRequest#getPathInfo()
      */
     @Override
     public String getPathInfo() {
@@ -307,7 +310,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.http.HttpServletRequest#getPathTranslated()
+     * @see HttpServletRequest#getPathTranslated()
      */
     @Override
     public String getPathTranslated() {
@@ -315,7 +318,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.ServletRequest#getProtocol()
+     * @see ServletRequest#getProtocol()
      */
     @Override
     public String getProtocol() {
@@ -323,7 +326,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.http.HttpServletRequest#getQueryString()
+     * @see HttpServletRequest#getQueryString()
      */
     @Override
     public String getQueryString() {
@@ -331,7 +334,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.ServletRequest#getReader()
+     * @see ServletRequest#getReader()
      */
     @Override
     public BufferedReader getReader() throws IOException {
@@ -339,7 +342,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.ServletRequest#getRealPath(String)
+     * @see ServletRequest#getRealPath(String)
      * @deprecated
      */
     @Override
@@ -349,7 +352,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.ServletRequest#getRemoteAddr()
+     * @see ServletRequest#getRemoteAddr()
      */
     @Override
     public String getRemoteAddr() {
@@ -357,7 +360,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.ServletRequest#getRemoteHost()
+     * @see ServletRequest#getRemoteHost()
      */
     @Override
     public String getRemoteHost() {
@@ -365,7 +368,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.ServletRequest#getRemotePort()
+     * @see ServletRequest#getRemotePort()
      */
     @Override
     @SuppressWarnings("javadoc") // This is a Servlet 2.4 method
@@ -374,7 +377,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.http.HttpServletRequest#getRemoteUser()
+     * @see HttpServletRequest#getRemoteUser()
      */
     @Override
     public String getRemoteUser() {
@@ -382,7 +385,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.ServletRequest#getRequestDispatcher(String)
+     * @see ServletRequest#getRequestDispatcher(String)
      */
     @Override
     public RequestDispatcher getRequestDispatcher(final String arg0) {
@@ -390,7 +393,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.http.HttpServletRequest#getRequestedSessionId()
+     * @see HttpServletRequest#getRequestedSessionId()
      */
     @Override
     public String getRequestedSessionId() {
@@ -398,7 +401,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.http.HttpServletRequest#getRequestURI()
+     * @see HttpServletRequest#getRequestURI()
      */
     @Override
     public String getRequestURI() {
@@ -406,7 +409,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.http.HttpServletRequest#getRequestURL()
+     * @see HttpServletRequest#getRequestURL()
      */
     @Override
     public StringBuffer getRequestURL() {
@@ -414,7 +417,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.ServletRequest#getScheme()
+     * @see ServletRequest#getScheme()
      */
     @Override
     public String getScheme() {
@@ -422,7 +425,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.ServletRequest#getServerName()
+     * @see ServletRequest#getServerName()
      */
     @Override
     public String getServerName() {
@@ -430,7 +433,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.ServletRequest#getServerPort()
+     * @see ServletRequest#getServerPort()
      */
     @Override
     public int getServerPort() {
@@ -438,7 +441,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.http.HttpServletRequest#getServletPath()
+     * @see HttpServletRequest#getServletPath()
      */
     @Override
     public String getServletPath() {
@@ -446,7 +449,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.http.HttpServletRequest#getSession()
+     * @see HttpServletRequest#getSession()
      */
     @Override
     public HttpSession getSession() {
@@ -454,7 +457,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.http.HttpServletRequest#getSession(boolean)
+     * @see HttpServletRequest#getSession(boolean)
      */
     @Override
     public HttpSession getSession(final boolean arg0) {
@@ -462,7 +465,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.http.HttpServletRequest#getUserPrincipal()
+     * @see HttpServletRequest#getUserPrincipal()
      */
     @Override
     public Principal getUserPrincipal() {
@@ -470,7 +473,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see 
javax.servlet.http.HttpServletRequest#isRequestedSessionIdFromCookie()
+     * @see HttpServletRequest#isRequestedSessionIdFromCookie()
      */
     @Override
     public boolean isRequestedSessionIdFromCookie() {
@@ -478,7 +481,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.http.HttpServletRequest#isRequestedSessionIdFromUrl()
+     * @see HttpServletRequest#isRequestedSessionIdFromUrl()
      * @deprecated
      */
     @Override
@@ -488,7 +491,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.http.HttpServletRequest#isRequestedSessionIdFromURL()
+     * @see HttpServletRequest#isRequestedSessionIdFromURL()
      */
     @Override
     public boolean isRequestedSessionIdFromURL() {
@@ -496,7 +499,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.http.HttpServletRequest#isRequestedSessionIdValid()
+     * @see HttpServletRequest#isRequestedSessionIdValid()
      */
     @Override
     public boolean isRequestedSessionIdValid() {
@@ -504,7 +507,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.ServletRequest#isSecure()
+     * @see HttpServletRequest#isSecure()
      */
     @Override
     public boolean isSecure() {
@@ -512,7 +515,7 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.http.HttpServletRequest#isUserInRole(String)
+     * @see HttpServletRequest#isUserInRole(String)
      */
     @Override
     public boolean isUserInRole(final String arg0) {
@@ -520,40 +523,24 @@ public class MockHttpServletRequest implements 
HttpServletRequest {
     }
 
     /**
-     * @see javax.servlet.ServletRequest#removeAttribute(String)
+     * @see ServletRequest#removeAttribute(String)
      */
     @Override
     public void removeAttribute(final String arg0) {
     }
 
     /**
-     * @see javax.servlet.ServletRequest#setAttribute(String, Object)
+     * @see ServletRequest#setAttribute(String, Object)
      */
     @Override
     public void setAttribute(final String arg0, final Object arg1) {
     }
 
     /**
-     * @see javax.servlet.ServletRequest#setCharacterEncoding(String)
+     * @see ServletRequest#setCharacterEncoding(String)
      */
     @Override
     public void setCharacterEncoding(final String arg0) throws 
UnsupportedEncodingException {
     }
 
-    /**
-     * For testing attack scenarios in SizesTest.
-     */
-    public void setContentLength(final long length) {
-        this.length = length;
-    }
-
-    /**
-     * Sets the read limit. This can be used to limit the number of bytes to 
read ahead.
-     *
-     * @param readLimit the read limit to use
-     */
-    public void setReadLimit(final int readLimit) {
-        this.readLimit = readLimit;
-    }
-
 }
diff --git 
a/commons-fileupload2-javax/src/test/java/org/apache/commons/fileupload2/javax/StreamingTest.java
 
b/commons-fileupload2-javax/src/test/java/org/apache/commons/fileupload2/javax/StreamingTest.java
index 0a85d7d..80f9bed 100644
--- 
a/commons-fileupload2-javax/src/test/java/org/apache/commons/fileupload2/javax/StreamingTest.java
+++ 
b/commons-fileupload2-javax/src/test/java/org/apache/commons/fileupload2/javax/StreamingTest.java
@@ -100,7 +100,7 @@ public class StreamingTest {
 
         final AbstractFileUpload upload = new ServletFileUpload();
         upload.setFileItemFactory(new DiskFileItemFactory());
-        final HttpServletRequest request = new 
MockHttpServletRequest(inputStream, length, contentType);
+        final HttpServletRequest request = new 
MockHttpServletRequest(inputStream, length, contentType, -1);
 
         return upload.parseRequest(new ServletRequestContext(request));
     }
@@ -110,7 +110,7 @@ public class StreamingTest {
 
         final AbstractFileUpload upload = new ServletFileUpload();
         upload.setFileItemFactory(new DiskFileItemFactory());
-        final HttpServletRequest request = new 
MockHttpServletRequest(inputStream, length, contentType);
+        final HttpServletRequest request = new 
MockHttpServletRequest(inputStream, length, contentType, -1);
 
         return upload.getItemIterator(new ServletRequestContext(request));
     }

Reply via email to