10.3.3. ロックポリシー
JBoss Transaction Service のロックは、特別なシステムタイプではなく、別のJBoss Transaction Service のオブジェクトインスタンスとなっています。ロックを永続化し、単純な形式にて命名できるように
Lock クラスはStateManager から派生してます。さらに、LockManagerクラスは実際のロックリクエスト許可ポリシーに関するセマンティクスを把握していません。Lock クラスのインスタンスでこの情報を保持し、conflictsWith メソッドを提供しています。LockManagerがこれを使い2つのロックが矛盾しているかを判断します。このように分けることにより、基本的なLock クラスから新たなロックタイプを取得することができ、矛盾した操作に関する適切な定義を提供し同時実行レベルを改善することができます。
Lock クラスによりmodifiesObject メソッドが提供され、LockManager がそれを使いロッキングリクエストを許可するのに呼出しあるいはメソッドが必要かを判断します。こうすることで、単純な読み込みや書き込み以外のロッキングモードにも対応できるようになります。提供されたLock クラスは従来の multiple reader/single writer ポリシーに対応しています。