| 
||||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
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
  | 
||||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||