public class RebindOperationExecutor extends Object implements CompensatingTransactionOperationExecutor
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.| Constructor and Description |
|---|
RebindOperationExecutor(LdapOperations ldapOperations,
Name originalDn,
Name temporaryDn,
Object originalObject,
Attributes originalAttributes)
Constructor.
|
| Modifier and Type | Method and Description |
|---|---|
void |
commit()
Commit the operation.
|
void |
performOperation()
Perform the operation.
|
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.
|
public RebindOperationExecutor(LdapOperations ldapOperations, Name originalDn, Name temporaryDn, Object originalObject, Attributes originalAttributes)
ldapOperations - the LdapOperations 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 operationpublic void rollback()
CompensatingTransactionOperationExecutorrollback in interface CompensatingTransactionOperationExecutorpublic void commit()
CompensatingTransactionOperationExecutorcommit in interface CompensatingTransactionOperationExecutorpublic void performOperation()
CompensatingTransactionOperationExecutorperformOperation in interface CompensatingTransactionOperationExecutor