de.uplanet.util.transaction
Class IndirectDirectoryTransaction

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

public final class IndirectDirectoryTransaction
extends java.lang.Object

The IO operation not done before requestCommit is called.

Version:
$Revision: 74059 $

Constructor Summary
IndirectDirectoryTransaction(java.io.File p_dirDst, java.io.File p_dirSrc)
           
 
Method Summary
 void commit()
          Commit the transaction.
 java.io.File getBackup()
           
 java.io.File getDestinationDirectory()
          Get the destination directory.
 java.lang.Throwable getLastError()
           
 java.io.File getSourceDirectory()
          Get the source directory.
 boolean hasBackup()
           
 boolean requestCommit()
          Request a file system transaction.
 boolean rollback()
          Try to rollback the directory transaction.
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

IndirectDirectoryTransaction

public IndirectDirectoryTransaction(java.io.File p_dirDst,
                                    java.io.File p_dirSrc)
                             throws java.io.IOException
Parameters:
p_dirDst -
p_dirSrc -
Throws:
java.io.IOException
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 java.io.File getDestinationDirectory()
Get the destination directory.

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

getSourceDirectory

public final java.io.File getSourceDirectory()
Get the source directory.

Returns:
The value p_dirSrc 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 directory, or false otherwise (e.g. if the destination directory did not exist before the transaction).

getBackup

public java.io.File getBackup()
Specified by:
getBackup in interface ITwoPhaseIOTransaction
Returns:
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).

commit

public final void commit()
Description copied from interface: ITwoPhaseTransaction
Commit the transaction.

Specified by:
commit in interface ITwoPhaseTransaction

rollback

public boolean rollback()
Try to rollback the directory 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 directory 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.