Interface CompensatingTransactionOperationExecutor
- All Known Implementing Classes:
BindOperationExecutor
,ModifyAttributesOperationExecutor
,NullOperationExecutor
,RebindOperationExecutor
,RenameOperationExecutor
,UnbindOperationExecutor
public interface CompensatingTransactionOperationExecutor
Responsible for executing a single recorded operation as well as committing or rolling
it back, depending on the transaction outcome. Instances of this interface are
constructed by
CompensatingTransactionOperationRecorder
objects, supplying them
with the information necessary for the respective operations.
The actual operations performed by the respective methods of this class might not be
what would originally be expected. E.g. one would expect that the
performOperation()
method of a CompensatingTransactionOperationExecutor
implementation would actually delete the entry, leaving it for the rollback()
method to recreate it using data from the original entry. However, this will not always
be possible. In an LDAP system, for instance, it might not be possible to retrieve all
the stored data from the original entry. In that case, the performOperation()
method will instead move the entry to a temporary location and leave it for the
commit()
method to actually remove the entry.
- Since:
- 1.2
-
Method Details
-
rollback
void rollback()Rollback the operation, restoring state of the target as it was before the operation was performed using the information supplied on creation of this instance. -
commit
void commit()Commit the operation. In many cases, this will not require any work at all to be performed. However, in some cases there will be interesting stuff to do. See class description for elaboration on this. -
performOperation
void performOperation()Perform the operation. This will most often require performing the recorded operation, but in some cases the actual operation performed by this method might be something else. See class description for elaboration on this.
-