Interface IFileOperationManager

All Known Implementing Classes:
FileOperationManager

public interface IFileOperationManager
Interface for a manager operating on the file system. Is implemented by FileOperationManager.
Author:
Philip Helger
  • Method Details

    • getLastError

      @Nullable FileIOError getLastError()
      Returns:
      The last error that occurred. May be null if no action was yet performed.
    • getLastOperation

      @Nullable EFileIOOperation getLastOperation()
      Returns:
      The last operation that was executed, independent of error or success. May be null if no action was performed yet.
    • createDir

      @Nonnull FileIOError createDir(@Nonnull File aDir)
      Create a new directory. The direct parent directory already needs to exist.
      Parameters:
      aDir - The directory to be created. May not be null.
      Returns:
      A non-null error code.
    • createDirIfNotExisting

      @Nonnull FileIOError createDirIfNotExisting(@Nonnull File aDir)
      Create a new directory if it does not exist. The direct parent directory already needs to exist.
      Parameters:
      aDir - The directory to be created if it does not exist. May not be null.
      Returns:
      A non-null error code.
    • createDirRecursive

      @Nonnull FileIOError createDirRecursive(@Nonnull File aDir)
      Create a new directory. The parent directories are created if they are missing.
      Parameters:
      aDir - The directory to be created. May not be null.
      Returns:
      A non-null error code.
    • createDirRecursiveIfNotExisting

      @Nonnull FileIOError createDirRecursiveIfNotExisting(@Nonnull File aDir)
      Create a new directory if it does not exist. The direct parent directory already needs to exist.
      Parameters:
      aDir - The directory to be created if it does not exist. May not be null.
      Returns:
      A non-null error code.
    • deleteDir

      @Nonnull FileIOError deleteDir(@Nonnull File aDir)
      Delete an existing directory. The directory needs to be empty before it can be deleted.
      Parameters:
      aDir - The directory to be deleted. May not be null.
      Returns:
      A non-null error code.
    • deleteDirIfExisting

      @Nonnull FileIOError deleteDirIfExisting(@Nonnull File aDir)
      Delete an existing directory if it is existing. The directory needs to be empty before it can be deleted.
      Parameters:
      aDir - The directory to be deleted. May not be null.
      Returns:
      A non-null error code.
    • deleteDirRecursive

      @Nonnull FileIOError deleteDirRecursive(@Nonnull File aDir)
      Delete an existing directory including all child objects.
      Parameters:
      aDir - The directory to be deleted. May not be null.
      Returns:
      A non-null error code.
    • deleteDirRecursiveIfExisting

      @Nonnull FileIOError deleteDirRecursiveIfExisting(@Nonnull File aDir)
      Delete an existing directory including all child objects if it is existing.
      Parameters:
      aDir - The directory to be deleted. May not be null.
      Returns:
      A non-null error code.
    • deleteFile

      @Nonnull FileIOError deleteFile(@Nonnull File aFile)
      Delete an existing file.
      Parameters:
      aFile - The file to be deleted. May not be null.
      Returns:
      A non-null error code.
    • deleteFileIfExisting

      @Nonnull FileIOError deleteFileIfExisting(@Nonnull File aFile)
      Delete a file if it is existing.
      Parameters:
      aFile - The file to be deleted. May not be null.
      Returns:
      A non-null error code.
    • renameDir

      @Nonnull FileIOError renameDir(@Nonnull File aSourceDir, @Nonnull File aTargetDir)
      Rename a directory.
      Parameters:
      aSourceDir - The original directory name. May not be null.
      aTargetDir - The destination directory name. May not be null.
      Returns:
      A non-null error code.
    • renameFile

      @Nonnull FileIOError renameFile(@Nonnull File aSourceFile, @Nonnull File aTargetFile)
      Rename a file.
      Parameters:
      aSourceFile - The original file name. May not be null.
      aTargetFile - The destination file name. May not be null.
      Returns:
      A non-null error code.
    • copyDirRecursive

      @Nonnull FileIOError copyDirRecursive(@Nonnull File aSourceDir, @Nonnull File aTargetDir)
      Copy a directory including all child objects.
      Parameters:
      aSourceDir - The source directory to be copied. May not be null.
      aTargetDir - The destination directory where to be copied. This directory may not be existing. May not be null.
      Returns:
      A non-null error code.
    • copyFile

      @Nonnull FileIOError copyFile(@Nonnull File aSourceFile, @Nonnull File aTargetFile)
      Copies the source file to the target file.
      Parameters:
      aSourceFile - The source file to use. May not be null. Needs to be an existing file.
      aTargetFile - The destination files. May not be null and may not be an existing file.
      Returns:
      A non-null error code.