public interface TransactionSynchronizationRegistry
標準アプリケーションサーバー環境では、このインターフェースを実装するインスタンスは、JNDI を介して標準名で検索できます。標準名は java:comp/TransactionSynchronizationRegistry です。
修飾子と型 | メソッドと説明 |
---|---|
ObjectSE | getResource(ObjectSE key) このメソッドが呼び出されたときに、現在のスレッドにバインドされたトランザクションで管理されているリソースのマップからオブジェクトを取得します。 |
boolean | getRollbackOnly() このメソッドが呼び出された時点で現在のスレッドにバインドされているトランザクションの rollbackOnly ステータスを取得します。 |
ObjectSE | getTransactionKey() このメソッドが呼び出されたときに現在のスレッドにバインドされたトランザクションを表す不透明オブジェクトを返します。 |
int | getTransactionStatus() このメソッドが呼び出された時点で、現在のスレッドにバインドされているトランザクションのステータスを返します。 |
void | putResource(ObjectSE key, ObjectSE value) このメソッドが呼び出されたときに、現在のスレッドにバインドされたトランザクションで管理されているリソースのマップ内のオブジェクトを追加または置換します。 |
void | registerInterposedSynchronization(Synchronization sync) 特別な順序セマンティクスで同期インスタンスを登録します。 |
void | setRollbackOnly() このメソッドが呼び出された時点で、現在のスレッドにバインドされているトランザクションの rollbackOnly ステータスを設定します。 |
ObjectSE getTransactionKey()
このオブジェクトは同じ hashCode を返し、同じアプリケーションサーバーの同じトランザクションコンテキストで実行されている任意のコンポーネントからこのメソッドを呼び出すことによって返される他のすべてのオブジェクトと等しいと比較されます。
toString メソッドは、トランザクションコンテキストを理解するために人間が使用できる可能性のある文字列を返します。toString の結果は、それ以外の場合は定義されていません。具体的には、toString の結果の前方互換性または後方互換性は保証されません。
オブジェクトは必ずしも直列化可能ではなく、仮想マシンが取得された場所以外では定義された動作はありません。
void putResource(ObjectSE key, ObjectSE value)
Map.put(Object, Object)
SE の規約です。例: キーにすでに値が関連付けられている場合は、値パラメーターで置き換えられます。key
- マップエントリのキー。value
- マップエントリの値。IllegalStateExceptionSE
- アクティブなトランザクションがない場合。NullPointerExceptionSE
- パラメーターキーが null の場合。ObjectSE getResource(ObjectSE key)
Map.get(Object)
SE の規約です。例: パラメーターキーのエントリがない場合、またはキーに関連付けられた値が実際に null の場合、返される値は null です。key
- マップエントリのキー。IllegalStateExceptionSE
- アクティブなトランザクションがない場合。NullPointerExceptionSE
- パラメーターキーが null の場合。void registerInterposedSynchronization(Synchronization sync)
beforeCompletion コールバックは、このメソッドが呼び出された時点で現在のスレッドにバインドされているトランザクションのトランザクションコンテキストで呼び出されます。許可されるメソッドには、コネクターなどのリソースへのアクセスが含まれます。「ユーザーコンポーネント」(タイマーサービスや Bean メソッドなど) へのアクセスは許可されません。これらは、呼び出し元によって管理されているデータの状態を変更したり、registerInterposedSynchronization の別の呼び出し元によってすでにフラッシュされているデータの状態を変更したりする可能性があるためです。一般的なコンテキストは、registerInterposedSynchronization の呼び出し元のコンポーネントコンテキストです。
afterCompletion コールバックは未定義のコンテキストで呼び出されます。上記で定義されている「ユーザーコンポーネント」へのアクセスは許可されません。リソースは閉じることができますが、使用してトランザクション作業を実行することはできません。
このメソッドがアクティブなトランザクションコンテキストなしで呼び出されると、IllegalStateException がスローされます。
2 フェーズコミット処理の開始後にこのメソッドが呼び出されると、IllegalStateException がスローされます。
sync
- 同期インスタンス。IllegalStateExceptionSE
- アクティブなトランザクションがない場合。int getTransactionStatus()
void setRollbackOnly()
IllegalStateExceptionSE
- アクティブなトランザクションがない場合。boolean getRollbackOnly()
IllegalStateExceptionSE
- アクティブなトランザクションがない場合。Copyright © 2018,2020 Eclipse Foundation.
Use is subject to license terms.