Class IndirectDirectoryTransaction

    • Method Detail

      • requestCommit

        public boolean requestCommit()
        Description copied from interface: ITwoPhaseTransaction
        Request a file system transaction.

        When this method returns true it has sucessfully moved the source file to it's new location, and has successfully created a backup copy of the destination file, if it existed before.

        Specified by:
        requestCommit in interface ITwoPhaseTransaction
      • getDestinationDirectory

        public final File getDestinationDirectory()
        Get the destination directory.
        The value p_dirDst that was passed to the contructor.
      • getSourceDirectory

        public final File getSourceDirectory()
        Get the source directory.
        The value p_dirSrc that was passed to the contructor.
      • hasBackup

        public final boolean hasBackup()
        Specified by:
        hasBackup in interface ITwoPhaseIOTransaction
        true if the transaction has left a backup directory, or false otherwise (e.g. if the destination directory did not exist before the transaction).
      • getBackup

        public File getBackup()
        Specified by:
        getBackup in interface ITwoPhaseIOTransaction
        The backup directory that was left by the transaction, or null if none was created (e.g. if the destination directory did not exist before the transaction).
      • rollback

        public boolean rollback()
        Try to rollback the directory transaction.
        Specified by:
        rollback in interface ITwoPhaseTransaction
        true if the rollback was successful, or false otherwise. In the latter case ITwoPhaseTransaction.getLastError() may give additional information about why the rollback failed, and a backup directory may exist then.
      • getLastError

        public final Throwable getLastError()
        Specified by:
        getLastError in interface ITwoPhaseTransaction
        The last exception that was caugth during the transaction, or null if no error occurred;