Package de.uplanet.util.transaction
Class IndirectDirectoryTransaction
java.lang.Object
de.uplanet.util.transaction.AbstractTwoPhaseIOTransaction
de.uplanet.util.transaction.IndirectDirectoryTransaction
- All Implemented Interfaces:
ITwoPhaseIOTransaction,ITwoPhaseTransaction
The IO operation not done before requestCommit is called.
-
Constructor Summary
ConstructorsConstructorDescriptionIndirectDirectoryTransaction(File p_dirDst, File p_dirSrc) IndirectDirectoryTransaction(Path p_dirDst, Path p_dirSrc) -
Method Summary
Modifier and TypeMethodDescriptionfinal voidcommit()Commit the transaction.final FileGet the destination directory.final Throwablefinal FileGet the source directory.final booleanbooleanRequest a file system transaction.booleanrollback()Try to rollback the directory transaction.toString()
-
Constructor Details
-
IndirectDirectoryTransaction
- Throws:
IOException
-
IndirectDirectoryTransaction
- Throws:
IOException
-
-
Method Details
-
requestCommit
public boolean requestCommit()Description copied from interface:ITwoPhaseTransactionRequest a file system transaction.When this method returns
trueit 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:
requestCommitin interfaceITwoPhaseTransaction
-
getDestinationDirectory
Get the destination directory.- Returns:
- The value
p_dirDstthat was passed to the contructor.
-
getSourceDirectory
Get the source directory.- Returns:
- The value
p_dirSrcthat was passed to the contructor.
-
hasBackup
public final boolean hasBackup()- Returns:
trueif the transaction has left a backup directory, orfalseotherwise (e.g. if the destination directory did not exist before the transaction).
-
getBackup
- Returns:
- The backup directory that was left by the transaction, or
nullif none was created (e.g. if the destination directory did not exist before the transaction).
-
commit
public final void commit()Description copied from interface:ITwoPhaseTransactionCommit the transaction. -
rollback
public boolean rollback()Try to rollback the directory transaction.- Returns:
trueif the rollback was successful, orfalseotherwise. In the latter caseITwoPhaseTransaction.getLastError()may give additional information about why the rollback failed, and a backup directory may exist then.
-
getLastError
- Returns:
- The last exception that was caugth during the transaction,
or
nullif no error occurred;
-
toString
-