Uploaded image for project: 'Commons IO'
  1. Commons IO
  2. IO-205

FileUtils.forceMkdir Javadoc is unclear

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 2.0
    • Utilities
    • None

    Description

      The Javadoc for FileUtils.forceMkdir doesn't say what is supposed to happen if a directory already exists with the same path.

      It does (misleadingly) say that if a file already exists, it fails. I interpreted this to mean that a directory would also fail, as it said file and not normal file. However in reality, if the directory already exists, the method passes.

      For clarity it should say that it succeeds if the directory already exists, and should probably also explicitly say "normal file" instead of just "file", as all directories are files.

      Also, internally, I notice it is checking for File.isFile() whereas our existing method for implementing the same thing is checking !File.isDirectory(). On some filesystems, a file can be both a directory and a normal file, and in this situation I would expect the method to pass, whereas with Commons' implementation it would fail. Maybe this is a trip-up because Sun themselves documented "normal file" as meaning "something which is not a directory", which is going to break the moment someone runs something on a more exotic filesystem.

      Attachments

        Activity

          People

            Unassigned Unassigned
            trejkaz Trejkaz
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: