public abstract class ConnectionFactoryUtils extends ObjectSE
ConnectionFactory
EE から CCI 接続を取得するための静的メソッドを提供するヘルパークラス。Spring 管理のトランザクション接続の特別なサポートが含まれています。CciLocalTransactionManager
または JtaTransactionManager
によって管理されます。CciTemplate
、Spring の CCI 操作オブジェクト、CciLocalTransactionManager
によって内部的に使用されます。アプリケーションコードで直接使用することもできます。
getConnection(javax.resource.cci.ConnectionFactory)
, releaseConnection(javax.resource.cci.Connection, javax.resource.cci.ConnectionFactory)
, CciLocalTransactionManager
, JtaTransactionManager
, TransactionSynchronizationManager
コンストラクターと説明 |
---|
ConnectionFactoryUtils() |
修飾子と型 | メソッドと説明 |
---|---|
static ConnectionEE | doGetConnection(ConnectionFactoryEE cf) 指定された ConnectionFactory から実際に CCI 接続を取得します。 |
static void | doReleaseConnection(ConnectionEE con, ConnectionFactoryEE cf) 特定の ConnectionFactory から取得した特定の接続を実際に閉じます。 |
static ConnectionEE | getConnection(ConnectionFactoryEE cf) 指定された ConnectionFactory から接続を取得します。 |
static ConnectionEE | getConnection(ConnectionFactoryEE cf, ConnectionSpecEE spec) 指定された ConnectionFactory から接続を取得します。 |
static boolean | isConnectionTransactional(ConnectionEE con, ConnectionFactoryEE cf) 指定された JCA CCI 接続がトランザクション対応であるかどうか、つまり、Spring のトランザクション機能によって現在のスレッドにバインドされているかどうかを判断します。 |
static void | releaseConnection(ConnectionEE con, ConnectionFactoryEE cf) 外部で管理されていない(つまり、スレッドにバインドされていない)場合は、指定の ConnectionFactory から取得した指定の接続を閉じます。 |
cloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, toStringSE, waitSE, waitSE, waitSE
public static ConnectionEE getConnection(ConnectionFactoryEE cf) throws CannotGetCciConnectionException
CciLocalTransactionManager
を使用する場合など、現在のスレッドにバインドされている対応する Connection を認識しているトランザクション同期がアクティブな場合(JTA トランザクション内など)は、接続をスレッドにバインドします。
cf
- 接続を取得する ConnectionFactoryCannotGetCciConnectionException
- 接続を取得する試みが失敗した場合 releaseConnection(javax.resource.cci.Connection, javax.resource.cci.ConnectionFactory)
public static ConnectionEE getConnection(ConnectionFactoryEE cf, @Nullable ConnectionSpecEE spec) throws CannotGetCciConnectionException
CciLocalTransactionManager
を使用する場合など、現在のスレッドにバインドされている対応する Connection を認識しているトランザクション同期がアクティブな場合(JTA トランザクション内など)は、接続をスレッドにバインドします。
cf
- 接続を取得する ConnectionFactoryspec
- 目的の接続の ConnectionSpec(null
の場合もあります)注: これを指定すると、共有トランザクション接続に参加せずに、すべての呼び出しで新しい接続が取得されます。CannotGetCciConnectionException
- 接続を取得する試みが失敗した場合 releaseConnection(javax.resource.cci.Connection, javax.resource.cci.ConnectionFactory)
public static ConnectionEE doGetConnection(ConnectionFactoryEE cf) throws ResourceExceptionEE
getConnection(javax.resource.cci.ConnectionFactory)
と同じですが、元の ResourceException をスローします。CciLocalTransactionManager
を使用する場合など、現在のスレッドにバインドされている対応する Connection を認識しているトランザクション同期がアクティブな場合(JTA トランザクション内など)は、接続をスレッドにバインドします。
TransactionAwareConnectionFactoryProxy
によって直接アクセスされます。
cf
- 接続を取得する ConnectionFactoryResourceExceptionEE
- CCI API メソッドによってスローされた場合 doReleaseConnection(javax.resource.cci.Connection, javax.resource.cci.ConnectionFactory)
public static boolean isConnectionTransactional(ConnectionEE con, @Nullable ConnectionFactoryEE cf)
con
- 確認する接続 cf
- 接続が取得された ConnectionFactory (null
の場合があります)public static void releaseConnection(@Nullable ConnectionEE con, @Nullable ConnectionFactoryEE cf)
con
- 必要に応じて閉じる接続 (これが null
の場合、呼び出しは無視されます)cf
- 接続が取得された ConnectionFactory (null
にすることができます)getConnection(javax.resource.cci.ConnectionFactory)
public static void doReleaseConnection(@Nullable ConnectionEE con, @Nullable ConnectionFactoryEE cf) throws ResourceExceptionEE
releaseConnection(javax.resource.cci.Connection, javax.resource.cci.ConnectionFactory)
と同じですが、元の ResourceException をスローします。TransactionAwareConnectionFactoryProxy
によって直接アクセスされます。
con
- 必要に応じて閉じる接続 (これが null
の場合、呼び出しは無視されます)cf
- 接続が取得された ConnectionFactory (null
にすることができます)ResourceExceptionEE
- JCA CCI メソッドによってスローされた場合 doGetConnection(javax.resource.cci.ConnectionFactory)