Generics
authormarkt <markt@13f79535-47bb-0310-9956-ffa450edef68>
Tue, 17 Nov 2009 22:03:22 +0000 (22:03 +0000)
committermarkt <markt@13f79535-47bb-0310-9956-ffa450edef68>
Tue, 17 Nov 2009 22:03:22 +0000 (22:03 +0000)
git-svn-id: https://svn.apache.org/repos/asf/tomcat/trunk@881562 13f79535-47bb-0310-9956-ffa450edef68

java/org/apache/tomcat/util/http/fileupload/ByteArrayOutputStream.java
java/org/apache/tomcat/util/http/fileupload/DiskFileItem.java
java/org/apache/tomcat/util/http/fileupload/FileCleaningTracker.java
java/org/apache/tomcat/util/http/fileupload/FileItemHeaders.java
java/org/apache/tomcat/util/http/fileupload/FileItemHeadersImpl.java
java/org/apache/tomcat/util/http/fileupload/FileUploadBase.java
java/org/apache/tomcat/util/http/fileupload/MultipartStream.java
java/org/apache/tomcat/util/http/fileupload/ParameterParser.java
java/org/apache/tomcat/util/http/fileupload/ServletFileUpload.java

index 21e7c15..9a1908b 100644 (file)
@@ -54,7 +54,7 @@ public class ByteArrayOutputStream extends OutputStream {
     private static final byte[] EMPTY_BYTE_ARRAY = new byte[0];
 
     /** The list of buffers, which grows and never reduces. */
-    private List buffers = new ArrayList();
+    private List<byte[]> buffers = new ArrayList<byte[]>();
     /** The index of the current buffer. */
     private int currentBufferIndex;
     /** The total count of bytes in all the filled buffers. */
@@ -95,7 +95,7 @@ public class ByteArrayOutputStream extends OutputStream {
      * @return the buffer
      */
     private byte[] getBuffer(int index) {
-        return (byte[]) buffers.get(index);
+        return buffers.get(index);
     }
 
     /**
index f1e7251..3d48a0d 100644 (file)
@@ -252,8 +252,8 @@ public class DiskFileItem
         ParameterParser parser = new ParameterParser();
         parser.setLowerCaseNames(true);
         // Parameter parser can handle null input
-        Map params = parser.parse(getContentType(), ';');
-        return (String) params.get("charset");
+        Map<String,String> params = parser.parse(getContentType(), ';');
+        return params.get("charset");
     }
 
 
index 360a06b..6b106b5 100644 (file)
@@ -48,7 +48,7 @@ public class FileCleaningTracker {
     /**\r
      * Collection of <code>Tracker</code> instances in existence.\r
      */\r
-    final Collection /* Tracker */ trackers = new Vector();  // synchronized\r
+    final Collection<Tracker> trackers = new Vector<Tracker>();  // synchronized\r
     /**\r
      * Whether to terminate the thread when the tracking is complete.\r
      */\r
index 7d46743..87c5f0a 100644 (file)
@@ -57,7 +57,7 @@ public interface FileItemHeaders {
      *         requested header. If the item does not have any headers of\r
      *         that name, return an empty <code>Enumeration</code>\r
      */\r
-    Iterator getHeaders(String name);\r
+    Iterator<String> getHeaders(String name);\r
 \r
     /**\r
      * <p>\r
@@ -73,5 +73,5 @@ public interface FileItemHeaders {
      *         requested header. If the item does not have any headers of\r
      *         that name return an empty <code>Enumeration</code>\r
      */\r
-    Iterator getHeaderNames();\r
+    Iterator<String> getHeaderNames();\r
 }\r
index 0c6ee19..2e77cf8 100644 (file)
@@ -38,33 +38,34 @@ public class FileItemHeadersImpl implements FileItemHeaders, Serializable {
      * Map of <code>String</code> keys to a <code>List</code> of
      * <code>String</code> instances.
      */
-    private final Map headerNameToValueListMap = new HashMap();
+    private final Map<String,List<String>> headerNameToValueListMap =
+        new HashMap<String,List<String>>();
 
     /**
      * List to preserve order of headers as added.  This would not be
      * needed if a <code>LinkedHashMap</code> could be used, but don't
      * want to depend on 1.4.
      */
-    private final List headerNameList = new ArrayList();
+    private final List<String> headerNameList = new ArrayList<String>();
 
     public String getHeader(String name) {
         String nameLower = name.toLowerCase();
-        List headerValueList = (List) headerNameToValueListMap.get(nameLower);
+        List<String> headerValueList = headerNameToValueListMap.get(nameLower);
         if (null == headerValueList) {
             return null;
         }
-        return (String) headerValueList.get(0);
+        return headerValueList.get(0);
     }
 
-    public Iterator getHeaderNames() {
+    public Iterator<String> getHeaderNames() {
         return headerNameList.iterator();
     }
 
-    public Iterator getHeaders(String name) {
+    public Iterator<String> getHeaders(String name) {
         String nameLower = name.toLowerCase();
-        List headerValueList = (List) headerNameToValueListMap.get(nameLower);
+        List<String> headerValueList = headerNameToValueListMap.get(nameLower);
         if (null == headerValueList) {
-            return Collections.EMPTY_LIST.iterator();
+            return Collections.<String>emptyList().iterator();
         }
         return headerValueList.iterator();
     }
@@ -77,9 +78,9 @@ public class FileItemHeadersImpl implements FileItemHeaders, Serializable {
      */
     public synchronized void addHeader(String name, String value) {
         String nameLower = name.toLowerCase();
-        List headerValueList = (List) headerNameToValueListMap.get(nameLower);
+        List<String> headerValueList = headerNameToValueListMap.get(nameLower);
         if (null == headerValueList) {
-            headerValueList = new ArrayList();
+            headerValueList = new ArrayList<String>();
             headerNameToValueListMap.put(nameLower, headerValueList);
             headerNameList.add(nameLower);
         }
index 46d20a1..718f690 100644 (file)
@@ -290,11 +290,11 @@ public abstract class FileUploadBase {
      * @throws FileUploadException if there are problems reading/parsing
      *                             the request or storing files.
      */
-    public List /* FileItem */ parseRequest(RequestContext ctx)
+    public List<FileItem> parseRequest(RequestContext ctx)
             throws FileUploadException {
         try {
             FileItemIterator iter = getItemIterator(ctx);
-            List items = new ArrayList();
+            List<FileItem> items = new ArrayList<FileItem>();
             FileItemFactory fac = getFileItemFactory();
             if (fac == null) {
                 throw new NullPointerException(
@@ -345,8 +345,9 @@ public abstract class FileUploadBase {
         ParameterParser parser = new ParameterParser();
         parser.setLowerCaseNames(true);
         // Parameter parser can handle null input
-        Map params = parser.parse(contentType, new char[] {';', ','});
-        String boundaryStr = (String) params.get("boundary");
+        Map<String,String> params =
+            parser.parse(contentType, new char[] {';', ','});
+        String boundaryStr = params.get("boundary");
 
         if (boundaryStr == null) {
             return null;
@@ -386,9 +387,10 @@ public abstract class FileUploadBase {
                 ParameterParser parser = new ParameterParser();
                 parser.setLowerCaseNames(true);
                 // Parameter parser can handle null input
-                Map params = parser.parse(pContentDisposition, ';');
+                Map<String,String> params =
+                    parser.parse(pContentDisposition, ';');
                 if (params.containsKey("filename")) {
-                    fileName = (String) params.get("filename");
+                    fileName = params.get("filename");
                     if (fileName != null) {
                         fileName = fileName.trim();
                     } else {
@@ -429,8 +431,9 @@ public abstract class FileUploadBase {
             ParameterParser parser = new ParameterParser();
             parser.setLowerCaseNames(true);
             // Parameter parser can handle null input
-            Map params = parser.parse(pContentDisposition, ';');
-            fieldName = (String) params.get("name");
+            Map<String,String> params =
+                parser.parse(pContentDisposition, ';');
+            fieldName = params.get("name");
             if (fieldName != null) {
                 fieldName = fieldName.trim();
             }
@@ -1013,6 +1016,9 @@ public abstract class FileUploadBase {
      * is exceeded.
      */
     protected abstract static class SizeException extends FileUploadException {
+
+        private static final long serialVersionUID = 1L;
+
         /**
          * The actual size of the request.
          */
index 20c28fa..88c8f72 100644 (file)
@@ -680,7 +680,10 @@ public class MultipartStream {
      * required syntax.
      */
     public static class MalformedStreamException
-    extends IOException {
+            extends IOException {
+
+        private static final long serialVersionUID = 1L;
+
         /**
          * Constructs a <code>MalformedStreamException</code> with no
          * detail message.
@@ -706,6 +709,9 @@ public class MultipartStream {
      */
     public static class IllegalBoundaryException
             extends IOException {
+
+        private static final long serialVersionUID = 1L;
+
         /**
          * Constructs an <code>IllegalBoundaryException</code> with no
          * detail message.
index dce1507..f2d3aa2 100644 (file)
@@ -224,9 +224,9 @@ public class ParameterParser {
      *
      * @return a map of name/value pairs
      */
-    public Map parse(final String str, char[] separators) {
+    public Map<String,String> parse(final String str, char[] separators) {
         if (separators == null || separators.length == 0) {
-            return new HashMap();
+            return new HashMap<String,String>();
         }
         char separator = separators[0];
         if (str != null) {
@@ -253,9 +253,9 @@ public class ParameterParser {
      *
      * @return a map of name/value pairs
      */
-    public Map parse(final String str, char separator) {
+    public Map<String,String> parse(final String str, char separator) {
         if (str == null) {
-            return new HashMap();
+            return new HashMap<String,String>();
         }
         return parse(str.toCharArray(), separator);
     }
@@ -270,11 +270,11 @@ public class ParameterParser {
      *
      * @return a map of name/value pairs
      */
-    public Map parse(final char[] chars, char separator) {
-        if (chars == null) {
-            return new HashMap();
+    public Map<String,String> parse(final char[] inputChars, char separator) {
+        if (inputChars == null) {
+            return new HashMap<String,String>();
         }
-        return parse(chars, 0, chars.length, separator);
+        return parse(inputChars, 0, inputChars.length, separator);
     }
 
     /**
@@ -289,17 +289,17 @@ public class ParameterParser {
      *
      * @return a map of name/value pairs
      */
-    public Map parse(
-        final char[] chars,
+    public Map<String,String> parse(
+        final char[] inputChars,
         int offset,
         int length,
         char separator) {
 
         if (chars == null) {
-            return new HashMap();
+            return new HashMap<String,String>();
         }
-        HashMap params = new HashMap();
-        this.chars = chars;
+        HashMap<String,String> params = new HashMap<String,String>();
+        this.chars = inputChars;
         this.pos = offset;
         this.len = length;
 
index 589a229..7c32eb2 100644 (file)
@@ -117,7 +117,7 @@ public class ServletFileUpload extends FileUpload {
      * @throws FileUploadException if there are problems reading/parsing
      *                             the request or storing files.
      */
-    public List /* FileItem */ parseRequest(HttpServletRequest request)
+    public List<FileItem> parseRequest(HttpServletRequest request)
     throws FileUploadException {
         return parseRequest(new ServletRequestContext(request));
     }