インターフェース CompensatingTransactionOperationExecutor
- すべての既知の実装クラス:
BindOperationExecutor、ModifyAttributesOperationExecutor、NullOperationExecutor、RebindOperationExecutor、RenameOperationExecutor、UnbindOperationExecutor
public interface CompensatingTransactionOperationExecutor
単一の記録された操作を実行するだけでなく、トランザクションの結果に応じてそれをコミットまたはロールバックする責任を負います。このインターフェースのインスタンスは
CompensatingTransactionOperationRecorder オブジェクトによって構築され、それぞれの操作に必要な情報をオブジェクトに提供します。 このクラスのそれぞれのメソッドによって実行される実際の操作は、当初予期されたものではない可能性があります。例: CompensatingTransactionOperationExecutor 実装の performOperation() メソッドが実際にエントリを削除し、元のエントリのデータを使用して rollback() メソッドがエントリを再作成することを期待する人もいるでしょう。ただし、これが常に可能であるとは限りません。たとえば、LDAP システムでは、元のエントリから保存されたデータをすべて取得できない場合があります。その場合、performOperation() メソッドは代わりにエントリを一時的な場所に移動し、commit() メソッドが実際にエントリを削除できるように残します。
- 導入:
- 1.2
メソッドの詳細
rollback
void rollback()操作をロールバックし、このインスタンスの作成時に提供された情報を使用して、操作が実行される前のターゲットの状態を復元します。commit
void commit()操作をコミットします。多くの場合、これには作業を実行する必要はまったくありません。ただし、場合によっては、興味深いことが行われることもあります。詳細については、クラスの説明を参照してください。performOperation
void performOperation()操作を実行します。これにはほとんどの場合、記録された操作を実行する必要がありますが、場合によっては、このメソッドによって実行される実際の操作が別のものになることがあります。詳細については、クラスの説明を参照してください。