diff options
author | Paul Phillips <paulp@improving.org> | 2009-09-01 16:05:38 +0000 |
---|---|---|
committer | Paul Phillips <paulp@improving.org> | 2009-09-01 16:05:38 +0000 |
commit | cfed2479dcfb88b3ded652a73a8a5278bbc0e8cd (patch) | |
tree | 73de3c20e40fbcb633172e908219963e11ac49f3 /src/library | |
parent | 0ef9dbcef0a6a77388dd5bce78282b7892192019 (diff) | |
download | scala-cfed2479dcfb88b3ded652a73a8a5278bbc0e8cd.tar.gz scala-cfed2479dcfb88b3ded652a73a8a5278bbc0e8cd.tar.bz2 scala-cfed2479dcfb88b3ded652a73a8a5278bbc0e8cd.zip |
Changed createDirectory and createFile to accept a
failIfExists argument (defaults to false) and eliminated the very
short-lived ensureDirectory and ensureFile.
Diffstat (limited to 'src/library')
-rw-r--r-- | src/library/scala/io/Path.scala | 24 | ||||
-rw-r--r-- | src/library/scala/xml/persistent/CachedFileStorage.scala | 2 |
2 files changed, 11 insertions, 15 deletions
diff --git a/src/library/scala/io/Path.scala b/src/library/scala/io/Path.scala index d5fde5d410..258076d0b5 100644 --- a/src/library/scala/io/Path.scala +++ b/src/library/scala/io/Path.scala @@ -138,22 +138,18 @@ class Path private[io] (val jfile: JFile) // creations def create(): Boolean = true - def createDirectory(force: Boolean = true): Directory = { + def createDirectory(force: Boolean = true, failIfExists: Boolean = false): Directory = { val res = if (force) jfile.mkdirs() else jfile.mkdir() - if (res) new Directory(jfile) - else fail("Failed to create new directory.") + if (!res && exists && failIfExists) fail("Directory '%s' already exists." format name) + else if (isDirectory) toDirectory + else new Directory(jfile) + } + def createFile(failIfExists: Boolean = false): File = { + val res = jfile.createNewFile() + if (!res && exists && failIfExists) fail("File '%s' already exists." format name) + else if (isFile) toFile + else new File(jfile) } - def createFile(): File = - if (jfile.createNewFile()) new File(jfile) - else fail("Failed to create new file.") - - /** Like createDirectory, but does not fail if it already exists. */ - def ensureDirectory(force: Boolean = true): Directory = - if (this.isDirectory) this.toDirectory else createDirectory(force) - - /** This is temporary while I try to unbreak fsc. */ - def ensureFile(): File = - if (this.isFile) this.toFile else createFile() // deletions def delete() = jfile.delete() diff --git a/src/library/scala/xml/persistent/CachedFileStorage.scala b/src/library/scala/xml/persistent/CachedFileStorage.scala index 8b3907b7f5..17194b4421 100644 --- a/src/library/scala/xml/persistent/CachedFileStorage.scala +++ b/src/library/scala/xml/persistent/CachedFileStorage.scala @@ -81,7 +81,7 @@ extends java.lang.Thread with scala.util.logging.Logged log("[save]\ndeleting "+theFile); theFile.delete(); log("creating new "+theFile); - theFile.ensureFile(); + theFile.createFile(); val fos = theFile.outputStream() val c = fos.getChannel() |