Class RebindOperationExecutor
java.lang.Object
org.springframework.ldap.transaction.compensating.RebindOperationExecutor
- All Implemented Interfaces:
CompensatingTransactionOperationExecutor
public class RebindOperationExecutor
extends Object
implements CompensatingTransactionOperationExecutor
A
CompensatingTransactionOperationExecutor
to manage a rebind operation. The
methods in this class do not behave as expected, since it might be impossible to
retrieve all the original attributes from the entry. Instead this class performs a
rename in performOperation()
, a negating rename in rollback()
,
and the commit()
operation unbinds the original entry from its temporary
location and binds a new entry to the original location using the attributes supplied
to the original rebind opertaion.- Since:
- 1.2
-
Constructor Summary
ConstructorDescriptionRebindOperationExecutor
(LdapOperations ldapOperations, Name originalDn, Name temporaryDn, Object originalObject, Attributes originalAttributes) Constructor. -
Method Summary
-
Constructor Details
-
RebindOperationExecutor
public RebindOperationExecutor(LdapOperations ldapOperations, Name originalDn, Name temporaryDn, Object originalObject, Attributes originalAttributes) Constructor.- Parameters:
ldapOperations
- theLdapOperations
to use to perform the rollback.originalDn
- The original DN of the entry to bind.temporaryDn
- The temporary DN of the entry.originalObject
- Original 'object' parameter sent to the rebind operation.originalAttributes
- Original 'attributes' parameter sent to the rebind operation
-
-
Method Details
-
rollback
public void rollback()Description copied from interface:CompensatingTransactionOperationExecutor
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.- Specified by:
rollback
in interfaceCompensatingTransactionOperationExecutor
-
commit
public void commit()Description copied from interface:CompensatingTransactionOperationExecutor
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.- Specified by:
commit
in interfaceCompensatingTransactionOperationExecutor
-
performOperation
public void performOperation()Description copied from interface:CompensatingTransactionOperationExecutor
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.- Specified by:
performOperation
in interfaceCompensatingTransactionOperationExecutor
-