RFE 4735419: File.createTempDirectory() to create a temporary directory (original) (raw)
Michal Conos michal.conos at googlemail.com
Fri Mar 27 13:17:56 UTC 2009
- Previous message: hg: jdk7/tl/jdk: 6802846: jarsigner needs enhanced cert validation(options)
- Next message: RFE 4735419: File.createTempDirectory() to create a temporary directory
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Hi,
I'd like to work on this RFE: http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4735419
It looks like an easy start if I want to contribute to openjdk. Customers are often using a "workaround" described in bug which contains a race.
My solution would be something like proposed bellow - but it'd be nice if someone could guide me through the process since I'd like to work on more RFEs.
Cheers, Michal
diff --git a/src/share/classes/java/io/File.java b/src/share/classes/java/io/File.java --- a/src/share/classes/java/io/File.java +++ b/src/share/classes/java/io/File.java @@ -2041,6 +2041,42 @@ public class File } }
- public static File createTempDirectory(String prefix, String suffix,
File directory)
throws IOException
- {
if (prefix.length() < 3)
throw new IllegalArgumentException("Prefix string too short");
if (suffix == null)
suffix = ".tmp";
File tmpdir = (directory != null) ?
directory : TemporaryDirectory.valueAsFile;
SecurityManager sm = System.getSecurityManager();
File f;
do {
f = TemporaryDirectory.generateFile(prefix, suffix, tmpdir);
if (sm != null) {
try {
sm.checkWrite(f.getPath());
} catch (SecurityException se) {
// don't reveal temporary directory location
if (directory == null)
throw new SecurityException("Unable to create
temporary file");
throw se;
}
}
} while (!fs.createDirectory(f.getPath()));
return f;
- }
- public static File createTempDirectory(String prefix, String suffix)
throws IOException
- {
return createTempDirectory(prefix, suffix, null);
- }
/* -- Basic infrastructure -- */ /**
-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://mail.openjdk.java.net/pipermail/core-libs-dev/attachments/20090327/793d9cb1/attachment.html>
- Previous message: hg: jdk7/tl/jdk: 6802846: jarsigner needs enhanced cert validation(options)
- Next message: RFE 4735419: File.createTempDirectory() to create a temporary directory
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]