de.uplanet.util.transaction
Class DirectFileCopyTransaction

java.lang.Object
  extended by de.uplanet.util.transaction.DirectFileCopyTransaction
All Implemented Interfaces:
ITwoPhaseIOTransaction, ITwoPhaseTransaction

public final class DirectFileCopyTransaction
extends java.lang.Object

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.

Version:
$Revision: 74629 $

Constructor Summary
DirectFileCopyTransaction(java.io.File p_fileDst, java.io.File p_fileSrc, boolean p_bOverwriteExisting)
           
 
Method Summary
 void commit()
          Commit the transaction.
 java.io.File getBackup()
           
 java.io.File getDestinationFile()
          Get the destination file.
 java.lang.Throwable getLastError()
           
 java.io.File getSourceFile()
          Get the source file.
 boolean hasBackup()
           
 boolean process()
           
 boolean requestCommit()
          Request a file system transaction.
 boolean rollback()
          Try to rollback the file transaction.
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

DirectFileCopyTransaction

public DirectFileCopyTransaction(java.io.File p_fileDst,
                                 java.io.File p_fileSrc,
                                 boolean p_bOverwriteExisting)
                          throws java.io.IOException
Throws:
java.io.IOException
Method Detail

process

public boolean process()

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

getDestinationFile

public final java.io.File getDestinationFile()
Get the destination file.

Returns:
The value p_fileDst that was passed to the contructor.

getSourceFile

public final java.io.File getSourceFile()
Get the source file.

Returns:
The value p_fileSrc that was passed to the contructor.

hasBackup

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

getBackup

public final java.io.File getBackup()
Specified by:
getBackup in interface ITwoPhaseIOTransaction
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 void commit()
Description copied from interface: ITwoPhaseTransaction
Commit the transaction.

Specified by:
commit in interface ITwoPhaseTransaction

rollback

public boolean rollback()
Try to rollback the file transaction.

Specified by:
rollback in interface ITwoPhaseTransaction
Returns:
true if the rollback was successful, or false otherwise. In the latter case getLastError() may give additional information about why the rollback failed, and a backup file may exist then.

getLastError

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

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object


Last updated: 2011-08-11 10-04
Copyright © 2000-2011 United Planet. All Rights Reserved.