Author: sebb Date: Wed Mar 6 14:59:14 2013 New Revision: 1453361 URL: http://svn.apache.org/r1453361 Log: FILEUPLOAD-226 DiskFileItem.counter could be converted to AtomicInteger
Modified: commons/proper/fileupload/trunk/src/changes/changes.xml commons/proper/fileupload/trunk/src/main/java/org/apache/commons/fileupload/disk/DiskFileItem.java Modified: commons/proper/fileupload/trunk/src/changes/changes.xml URL: http://svn.apache.org/viewvc/commons/proper/fileupload/trunk/src/changes/changes.xml?rev=1453361&r1=1453360&r2=1453361&view=diff ============================================================================== --- commons/proper/fileupload/trunk/src/changes/changes.xml (original) +++ commons/proper/fileupload/trunk/src/changes/changes.xml Wed Mar 6 14:59:14 2013 @@ -44,6 +44,9 @@ The <action> type attribute can be add,u <body> <release version="1.3-SNAPSHOT"> + <action dev="sebb" type="update" issue="FILEUPLOAD-226"> + DiskFileItem.counter could be converted to AtomicInteger + </action> <action dev="simonetripodi" type="add" issue="FILEUPLOAD-218"> Update version in POM </action> Modified: commons/proper/fileupload/trunk/src/main/java/org/apache/commons/fileupload/disk/DiskFileItem.java URL: http://svn.apache.org/viewvc/commons/proper/fileupload/trunk/src/main/java/org/apache/commons/fileupload/disk/DiskFileItem.java?rev=1453361&r1=1453360&r2=1453361&view=diff ============================================================================== --- commons/proper/fileupload/trunk/src/main/java/org/apache/commons/fileupload/disk/DiskFileItem.java (original) +++ commons/proper/fileupload/trunk/src/main/java/org/apache/commons/fileupload/disk/DiskFileItem.java Wed Mar 6 14:59:14 2013 @@ -31,6 +31,7 @@ import java.io.ObjectOutputStream; import java.io.OutputStream; import java.io.UnsupportedEncodingException; import java.util.Map; +import java.util.concurrent.atomic.AtomicInteger; import org.apache.commons.fileupload.FileItem; import org.apache.commons.fileupload.FileItemHeaders; @@ -110,7 +111,7 @@ public class DiskFileItem /** * Counter used in unique identifier generation. */ - private static int counter = 0; + private static final AtomicInteger counter = new AtomicInteger(0); /** * The name of the form field as provided by the browser. @@ -604,10 +605,7 @@ public class DiskFileItem */ private static String getUniqueId() { final int limit = 100000000; - int current; - synchronized (DiskFileItem.class) { - current = counter++; - } + int current = counter.getAndIncrement(); String id = Integer.toString(current); // If you manage to get more than 100 million of ids, you'll