Package de.uplanet.util.transaction
Class DirectFileMoveTransaction
java.lang.Object
de.uplanet.util.transaction.AbstractTwoPhaseIOTransaction
de.uplanet.util.transaction.DirectFileMoveTransaction
- All Implemented Interfaces:
ITwoPhaseIOTransaction
,ITwoPhaseTransaction
The IO operation may be done before requestCommit is called, on a call of the process method.
Without a process() call the IO Operation is done by the requestCommit call.
-
Constructor Summary
ConstructorDescriptionDirectFileMoveTransaction
(File p_fileDst, File p_fileSrc, boolean p_bOverwriteExisting) -
Method Summary
Modifier and TypeMethodDescriptionfinal void
commit()
Commit the transaction.final File
final File
Get the destination file.final Throwable
final File
Get the source file.final boolean
boolean
process()
boolean
Request a file system transaction.boolean
rollback()
Try to rollback the file transaction.toString()
-
Constructor Details
-
DirectFileMoveTransaction
public DirectFileMoveTransaction(File p_fileDst, File p_fileSrc, boolean p_bOverwriteExisting) throws IOException - Parameters:
p_fileDst
-p_fileSrc
-p_bOverwriteExisting
-- Throws:
IOException
-
-
Method Details
-
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 interfaceITwoPhaseTransaction
-
process
public boolean process() -
getDestinationFile
Get the destination file.- Returns:
- The value
p_fileDst
that was passed to the contructor.
-
getSourceFile
Get the source file.- Returns:
- The value
p_fileSrc
that was passed to the contructor.
-
hasBackup
public final boolean hasBackup()- Returns:
true
if the transaction has left a backup file, orfalse
otherwise (e.g. if the destination file did not exist before the transaction).
-
getBackup
- Returns:
- The backup file that was left by the transaction, or
null
if none was created (e.g. if the destination file did not exist before the transaction).
-
commit
public final void commit()Description copied from interface:ITwoPhaseTransaction
Commit the transaction. -
rollback
public boolean rollback()Try to rollback the file transaction.- Returns:
true
if the rollback was successful, orfalse
otherwise. In the latter caseITwoPhaseTransaction.getLastError()
may give additional information about why the rollback failed, and a backup file may exist then.
-
getLastError
- Returns:
- The last exception that was caugth during the transaction,
or
null
if no error occurred;
-
toString
-