antoine 2003/06/24 09:07:27
Modified: . WHATSNEW
src/main/org/apache/tools/ant/util FileUtils.java
src/testcases/org/apache/tools/ant/util FileUtilsTest.java
Log:
Use java.io.tmpdir as location for temporary files
in FileUtils#createTempFile (when the directory parameter is null)
Revision Changes Path
1.447 +3 -0 ant/WHATSNEW
Index: WHATSNEW
===================================================================
RCS file: /home/cvs/ant/WHATSNEW,v
retrieving revision 1.446
retrieving revision 1.447
diff -u -r1.446 -r1.447
--- WHATSNEW 24 Jun 2003 15:08:53 -0000 1.446
+++ WHATSNEW 24 Jun 2003 16:07:24 -0000 1.447
@@ -445,6 +445,9 @@
* <checksum> has two new properties: totalproperty and todir.
+* FileUtils#createTempFile will now create temporary files in the
+ directory pointed to by the property java.io.tmpdir
+
Changes from Ant 1.5.2 to Ant 1.5.3
===================================
1.43 +6 -5 ant/src/main/org/apache/tools/ant/util/FileUtils.java
Index: FileUtils.java
===================================================================
RCS file: /home/cvs/ant/src/main/org/apache/tools/ant/util/FileUtils.java,v
retrieving revision 1.42
retrieving revision 1.43
diff -u -r1.42 -r1.43
--- FileUtils.java 19 May 2003 15:55:22 -0000 1.42
+++ FileUtils.java 24 Jun 2003 16:07:24 -0000 1.43
@@ -783,20 +783,21 @@
* of this method will yield a different file name.</p>
*
* <p>This method is different to File.createTempFile of JDK 1.2
- * as it doesn't create the file itself and doesn't use platform
- * specific temporary directory when the parentDir attribute is
+ * as it doesn't create the file itself.
+ * It uses the location pointed to by java.io.tmpdir
+ * when the parentDir attribute is
* null.</p>
*
* @param parentDir Directory to create the temporary file in -
* current working directory will be assumed if this parameter is
* null.
*
- * @since 1.8
+ * @since ant 1.5
*/
public File createTempFile(String prefix, String suffix, File parentDir)
{
File result = null;
- String parent = null;
+ String parent = System.getProperty("java.io.tmpdir");
if (parentDir != null) {
parent = parentDir.getPath();
}
1.18 +61 -60
ant/src/testcases/org/apache/tools/ant/util/FileUtilsTest.java
Index: FileUtilsTest.java
===================================================================
RCS file:
/home/cvs/ant/src/testcases/org/apache/tools/ant/util/FileUtilsTest.java,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -r1.17 -r1.18
--- FileUtilsTest.java 23 Jun 2003 16:18:00 -0000 1.17
+++ FileUtilsTest.java 24 Jun 2003 16:07:26 -0000 1.18
@@ -64,8 +64,8 @@
/**
* Tests for org.apache.tools.ant.util.FileUtils.
*
- * @author Stefan Bodewig
- * @author <a href="mailto:[EMAIL PROTECTED]">Jeff Tulley</a>
+ * @author Stefan Bodewig
+ * @author <a href="mailto:[EMAIL PROTECTED]">Jeff Tulley</a>
*/
public class FileUtilsTest extends TestCase {
@@ -117,7 +117,7 @@
// JDK 1.1
assertEquals(modTime, secondModTime);
}
-
+
// number of milliseconds in a day
final int millisperday=24 * 3600 * 1000;
@@ -145,30 +145,30 @@
/*
* Start with simple absolute file names.
*/
- assertEquals(File.separator,
+ assertEquals(File.separator,
fu.resolveFile(null, "/").getPath());
- assertEquals(File.separator,
+ assertEquals(File.separator,
fu.resolveFile(null, "\\").getPath());
/*
* throw in drive letters
*/
String driveSpec = "C:";
- assertEquals(driveSpec + "\\",
+ assertEquals(driveSpec + "\\",
fu.resolveFile(null, driveSpec + "/").getPath());
- assertEquals(driveSpec + "\\",
+ assertEquals(driveSpec + "\\",
fu.resolveFile(null, driveSpec + "\\").getPath());
String driveSpecLower = "c:";
- assertEquals(driveSpec + "\\",
+ assertEquals(driveSpec + "\\",
fu.resolveFile(null, driveSpecLower + "/").getPath());
- assertEquals(driveSpec + "\\",
+ assertEquals(driveSpec + "\\",
fu.resolveFile(null, driveSpecLower + "\\").getPath());
/*
* promised to eliminate consecutive slashes after drive letter.
*/
- assertEquals(driveSpec + "\\",
+ assertEquals(driveSpec + "\\",
fu.resolveFile(null, driveSpec + "/////").getPath());
- assertEquals(driveSpec + "\\",
+ assertEquals(driveSpec + "\\",
fu.resolveFile(null, driveSpec +
"\\\\\\\\\\\\").getPath());
if (Os.isFamily("netware")) {
@@ -176,21 +176,21 @@
* throw in NetWare volume names
*/
driveSpec = "SYS:";
- assertEquals(driveSpec,
+ assertEquals(driveSpec,
fu.resolveFile(null, driveSpec + "/").getPath());
- assertEquals(driveSpec,
+ assertEquals(driveSpec,
fu.resolveFile(null, driveSpec + "\\").getPath());
driveSpecLower = "sys:";
- assertEquals(driveSpec,
+ assertEquals(driveSpec,
fu.resolveFile(null, driveSpecLower +
"/").getPath());
- assertEquals(driveSpec,
+ assertEquals(driveSpec,
fu.resolveFile(null, driveSpecLower +
"\\").getPath());
/*
* promised to eliminate consecutive slashes after drive letter.
*/
- assertEquals(driveSpec,
+ assertEquals(driveSpec,
fu.resolveFile(null, driveSpec +
"/////").getPath());
- assertEquals(driveSpec,
+ assertEquals(driveSpec,
fu.resolveFile(null, driveSpec +
"\\\\\\\\\\\\").getPath());
}
@@ -227,60 +227,60 @@
/*
* Start with simple absolute file names.
*/
- assertEquals(File.separator,
+ assertEquals(File.separator,
fu.normalize("/").getPath());
- assertEquals(File.separator,
+ assertEquals(File.separator,
fu.normalize("\\").getPath());
/*
* throw in drive letters
*/
String driveSpec = "C:";
- assertEquals(driveSpec,
+ assertEquals(driveSpec,
fu.normalize(driveSpec).getPath());
- assertEquals(driveSpec + "\\",
+ assertEquals(driveSpec + "\\",
fu.normalize(driveSpec + "/").getPath());
- assertEquals(driveSpec + "\\",
+ assertEquals(driveSpec + "\\",
fu.normalize(driveSpec + "\\").getPath());
String driveSpecLower = "c:";
- assertEquals(driveSpec + "\\",
+ assertEquals(driveSpec + "\\",
fu.normalize(driveSpecLower + "/").getPath());
- assertEquals(driveSpec + "\\",
+ assertEquals(driveSpec + "\\",
fu.normalize(driveSpecLower + "\\").getPath());
/*
* promised to eliminate consecutive slashes after drive letter.
*/
- assertEquals(driveSpec + "\\",
+ assertEquals(driveSpec + "\\",
fu.normalize(driveSpec + "/////").getPath());
- assertEquals(driveSpec + "\\",
+ assertEquals(driveSpec + "\\",
fu.normalize(driveSpec + "\\\\\\\\\\\\").getPath());
if (Os.isFamily("netware")) {
/*
- * throw in NetWare volume names
+ * throw in NetWare volume names
*/
driveSpec = "SYS:";
- assertEquals(driveSpec,
+ assertEquals(driveSpec,
fu.normalize(driveSpec).getPath());
- assertEquals(driveSpec,
+ assertEquals(driveSpec,
fu.normalize(driveSpec + "/").getPath());
- assertEquals(driveSpec,
+ assertEquals(driveSpec,
fu.normalize(driveSpec + "\\").getPath());
driveSpecLower = "sys:";
- assertEquals(driveSpec,
+ assertEquals(driveSpec,
fu.normalize(driveSpecLower).getPath());
- assertEquals(driveSpec,
+ assertEquals(driveSpec,
fu.normalize(driveSpecLower + "/").getPath());
- assertEquals(driveSpec,
+ assertEquals(driveSpec,
fu.normalize(driveSpecLower + "\\").getPath());
- assertEquals(driveSpec + "\\junk",
+ assertEquals(driveSpec + "\\junk",
fu.normalize(driveSpecLower + "\\junk").getPath());
/*
* promised to eliminate consecutive slashes after drive letter.
*/
- assertEquals(driveSpec,
+ assertEquals(driveSpec,
fu.normalize(driveSpec + "/////").getPath());
- assertEquals(driveSpec,
+ assertEquals(driveSpec,
fu.normalize(driveSpec + "\\\\\\\\\\\\").getPath());
}
@@ -310,7 +310,7 @@
} catch (BuildException e) {
// Expected exception caught
}
-
+
try {
fu.normalize(localize("/1/../../b"));
fail("successfully crawled beyond the filesystem root");
@@ -329,7 +329,7 @@
} catch (NullPointerException npe) {
// Expected exception caught
}
-
+
File f = fu.resolveFile(null, "a");
assertEquals(f, new File("a"));
}
@@ -345,17 +345,18 @@
String name = tmp1.getName();
assertTrue("starts with pre", name.startsWith("pre"));
assertTrue("ends with .suf", name.endsWith(".suf"));
- assertEquals("is inside parent dir",
+ assertEquals("is inside parent dir",
parent.getAbsolutePath(),
tmp1.getParent());
File tmp2 = fu.createTempFile("pre", ".suf", parent);
- assertTrue("files are different",
+ assertTrue("files are different",
!tmp1.getAbsolutePath().equals(tmp2.getAbsolutePath()));
// null parent dir
File tmp3 = fu.createTempFile("pre", ".suf", null);
- assertEquals((new File(tmp3.getName())).getAbsolutePath(),
+ String tmploc = System.getProperty("java.io.tmpdir");
+ assertEquals((new File(tmploc, tmp3.getName())).getAbsolutePath(),
tmp3.getAbsolutePath());
}
@@ -363,17 +364,17 @@
* Test contentEquals
*/
public void testContentEquals() throws IOException {
- assertTrue("Non existing files", fu.contentEquals(new File("foo"),
+ assertTrue("Non existing files", fu.contentEquals(new File("foo"),
new File("bar")));
- assertTrue("One exists, the other one doesn\'t",
+ assertTrue("One exists, the other one doesn\'t",
!fu.contentEquals(new File("foo"), new
File("build.xml")));
assertTrue("Don\'t compare directories",
!fu.contentEquals(new File("src"), new File("src")));
assertTrue("File equals itself",
- fu.contentEquals(new File("build.xml"),
+ fu.contentEquals(new File("build.xml"),
new File("build.xml")));
assertTrue("Files are different",
- !fu.contentEquals(new File("build.xml"),
+ !fu.contentEquals(new File("build.xml"),
new File("docs.xml")));
}
@@ -391,34 +392,34 @@
* Test removeLeadingPath.
*/
public void testRemoveLeadingPath() {
- assertEquals("bar", fu.removeLeadingPath(new File("/foo"),
+ assertEquals("bar", fu.removeLeadingPath(new File("/foo"),
new File("/foo/bar")));
- assertEquals("bar", fu.removeLeadingPath(new File("/foo/"),
+ assertEquals("bar", fu.removeLeadingPath(new File("/foo/"),
new File("/foo/bar")));
- assertEquals("bar", fu.removeLeadingPath(new File("\\foo"),
+ assertEquals("bar", fu.removeLeadingPath(new File("\\foo"),
new File("\\foo\\bar")));
- assertEquals("bar", fu.removeLeadingPath(new File("\\foo\\"),
+ assertEquals("bar", fu.removeLeadingPath(new File("\\foo\\"),
new File("\\foo\\bar")));
- assertEquals("bar", fu.removeLeadingPath(new File("c:/foo"),
+ assertEquals("bar", fu.removeLeadingPath(new File("c:/foo"),
new File("c:/foo/bar")));
- assertEquals("bar", fu.removeLeadingPath(new File("c:/foo/"),
+ assertEquals("bar", fu.removeLeadingPath(new File("c:/foo/"),
new File("c:/foo/bar")));
- assertEquals("bar", fu.removeLeadingPath(new File("c:\\foo"),
+ assertEquals("bar", fu.removeLeadingPath(new File("c:\\foo"),
new File("c:\\foo\\bar")));
- assertEquals("bar", fu.removeLeadingPath(new File("c:\\foo\\"),
+ assertEquals("bar", fu.removeLeadingPath(new File("c:\\foo\\"),
new File("c:\\foo\\bar")));
- assertEquals(fu.normalize("/bar").getAbsolutePath(),
+ assertEquals(fu.normalize("/bar").getAbsolutePath(),
fu.removeLeadingPath(new File("/foo"), new
File("/bar")));
- assertEquals(fu.normalize("/foobar").getAbsolutePath(),
+ assertEquals(fu.normalize("/foobar").getAbsolutePath(),
fu.removeLeadingPath(new File("/foo"), new
File("/foobar")));
// bugzilla report 19979
- assertEquals("", fu.removeLeadingPath(new File("/foo/bar"),
+ assertEquals("", fu.removeLeadingPath(new File("/foo/bar"),
new File("/foo/bar")));
- assertEquals("", fu.removeLeadingPath(new File("/foo/bar"),
+ assertEquals("", fu.removeLeadingPath(new File("/foo/bar"),
new File("/foo/bar/")));
- assertEquals("", fu.removeLeadingPath(new File("/foo/bar/"),
+ assertEquals("", fu.removeLeadingPath(new File("/foo/bar/"),
new File("/foo/bar/")));
- assertEquals("", fu.removeLeadingPath(new File("/foo/bar/"),
+ assertEquals("", fu.removeLeadingPath(new File("/foo/bar/"),
new File("/foo/bar")));
}
@@ -455,7 +456,7 @@
assertEquals("C:\\foo", fu.fromURI("file:///c:/foo"));
}
assertEquals(localize("/foo"), fu.fromURI("file:///foo"));
- assertEquals("." + File.separator + "foo",
+ assertEquals("." + File.separator + "foo",
fu.fromURI("file:./foo"));
assertEquals(localize("/foo bar"), fu.fromURI("file:///foo%20bar"));
assertEquals(localize("/foo#bar"), fu.fromURI("file:///foo%23bar"));
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]