|
||||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
java.lang.Objectorg.seasar.jca.outbound.policy.AbstractPolicy
org.seasar.jca.outbound.policy.AbstractTransactionBoundedPoolingPolicy
public abstract class AbstractTransactionBoundedPoolingPolicy
コネクションをトランザクションに関連づけて管理するポリシーの実装クラスです.
| フィールドの概要 | |
|---|---|
protected boolean |
allowLocalTx
リソースローカルなトランザクションを許可する場合は true |
protected Map<Transaction,ManagedConnectionPool<Object>> |
pools
トランザクションとマネージドコネクションプールのマッピング |
protected TransactionManager |
tm
トランザクションマネージャ |
| クラス org.seasar.jca.outbound.policy.AbstractPolicy から継承されたフィールド |
|---|
mcf, needMCF, nextPolicy |
| コンストラクタの概要 | |
|---|---|
AbstractTransactionBoundedPoolingPolicy(TransactionManager tm)
インスタンスを構築します. |
|
| メソッドの概要 | |
|---|---|
void |
allocate(ConnectionManagementContext context)
コネクションを割り当てます. |
protected void |
allocateNew(ConnectionManagementContext context,
Transaction tx,
ManagedConnectionPool<Object> pool)
後続のコネクション管理ポリシーから取得したマネージドコネクションをプールします. |
protected void |
allocateUnboundConnection(ConnectionManagementContext context)
スレッドがトランザクションに関連づけられていない場合で,ローカルトランザクションが許可されている場合は,後続のコネクション管理ポリシーからコネクションを割り当てます. |
protected abstract void |
associateTx(Transaction tx,
ManagedConnectionPool<Object> pool,
ConnectionManagementContext context)
コネクションをトランザクションに関連づけます. |
protected void |
checkIn(ManagedConnection mc)
マネージドコネクションをプールに戻します. |
protected void |
checkOut(ConnectionManagementContext context)
コネクションをチェックアウトします. |
void |
connectionErrorOccurred(ManagedConnection mc)
コネクションエラーが発生した場合に呼び出されます. |
protected ManagedConnectionPool<Object> |
getPool(Transaction tx,
boolean create)
現在のトランザクションに関連づけられたマネージドコネクションのプールを返します. |
boolean |
isAllowLocalTx()
リソースローカルなトランザクションが許可されている場合は trueを返します. |
protected void |
registerContext(Transaction tx)
現在のトランザクションにマネージドコネクションのプールを関連づけます. |
void |
release(ManagedConnection mc)
コネクションを解放します. |
protected void |
releaseContext(Transaction tx)
現在のトランザクションに関連づけられているマネージドコネクションのプールをクローズします. |
void |
setAllowLocalTx(boolean allowLocalTx)
リソースローカルなトランザクションが許可されている場合は trueを設定します. |
| クラス org.seasar.jca.outbound.policy.AbstractPolicy から継承されたメソッド |
|---|
assertValidMCF, dispose, initialize, silentRelease |
| クラス java.lang.Object から継承されたメソッド |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| フィールドの詳細 |
|---|
protected final Map<Transaction,ManagedConnectionPool<Object>> pools
protected final TransactionManager tm
protected boolean allowLocalTx
true
| コンストラクタの詳細 |
|---|
public AbstractTransactionBoundedPoolingPolicy(TransactionManager tm)
tm - トランザクションマネージャ| メソッドの詳細 |
|---|
public void allocate(ConnectionManagementContext context)
throws ResourceException
ConnectionManagementPolicy の記述:
割り当てられたコネクションはConnectionManagementContextに設定されます.
ConnectionManagementPolicy 内の allocateAbstractPolicy 内の allocatecontext - コネクション管理コンテキスト
ResourceException - コネクションの割り当て中に例外が発生した場合
public void release(ManagedConnection mc)
throws ResourceException
ConnectionManagementPolicy の記述:
ConnectionManagementPolicy 内の releaseAbstractPolicy 内の releasemc - マネージドコネクション
ResourceException - コネクションの解放中に例外が発生した場合
public void connectionErrorOccurred(ManagedConnection mc)
throws ResourceException
ConnectionManagementPolicy の記述: エラーが発生したコネクションをキャッシュしているポリシーはコネクションを破棄します.
ConnectionManagementPolicy 内の connectionErrorOccurredAbstractPolicy 内の connectionErrorOccurredmc - エラーが発生したマネージドコネクション
ResourceException - 処理中にエラーが発生した場合
protected void checkOut(ConnectionManagementContext context)
throws ResourceException
現在のトランザクションにマネージドコネクションが割り当てられていれば,それをコネクション管理コンテキストに設定します. それ以外の場合は後続のコネクション管理ポリシーからコネクションを割り当てます.
context - コネクション管理ポリシー
ResourceException - コネクションのチェックアウト中に例外が発生した場合
protected void allocateUnboundConnection(ConnectionManagementContext context)
throws ResourceException
context - コネクション管理ポリシー
ResourceException - コネクションの割り当て中に例外が発生した場合
protected void allocateNew(ConnectionManagementContext context,
Transaction tx,
ManagedConnectionPool<Object> pool)
throws ResourceException
context - コネクション管理ポリシーtx - トランザクションpool - マネージドコネクションのプール
ResourceException - コネクションの取得中に例外が発生した場合
protected abstract void associateTx(Transaction tx,
ManagedConnectionPool<Object> pool,
ConnectionManagementContext context)
throws ResourceException
tx - トランザクションpool - マネージドコネクションのプールcontext - コネクション管理コンテキスト
ResourceException - 関連づけ中に例外が発生した場合
protected void checkIn(ManagedConnection mc)
throws ResourceException
現在のトランザクションにプールが関連づけられていない場合は後続のコネクション管理ポリシーに返します.
mc - マネージドコネクション
ResourceException - チェックイン中に例外が発生した場合
protected ManagedConnectionPool<Object> getPool(Transaction tx,
boolean create)
tx - トランザクションcreate - 現在のトランザクションにプールがまだ関連づけられていない場合に新たにプールを作成する場合はtrue
protected void registerContext(Transaction tx)
throws IllegalStateException,
RollbackException,
SystemException
tx - トランザクション
IllegalStateException - 例外が発生した場合
RollbackException - 例外が発生した場合
SystemException - 例外が発生した場合protected void releaseContext(Transaction tx)
tx - トランザクションpublic boolean isAllowLocalTx()
trueを返します.
truepublic void setAllowLocalTx(boolean allowLocalTx)
trueを設定します.
allowLocalTx - リソースローカルなトランザクションが許可されている場合はtrue
|
||||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||