public class ConnectionSpecConnectionFactoryAdapter extends DelegatingConnectionFactory
ConnectionFactory
EE のアダプター。指定された ConnectionSpec をすべての標準 getConnection()
呼び出しに適用します。つまり、ターゲットで暗黙的に getConnection(ConnectionSpec)
を呼び出します。他のすべてのメソッドは、ターゲット ConnectionFactory の対応するメソッドに委譲するだけです。ConnectionSpec が構成されていないターゲット JNDI ConnectionFactory をプロキシするために使用できます。クライアントコードは、getConnection()
を呼び出すたびに ConnectionSpec を渡さなくても、ConnectionFactory で機能します。
次の例では、クライアントコードは、事前構成された "myConnectionFactory" を透過的に操作し、指定されたユーザー資格情報を使用して "myTargetConnectionFactory" に暗黙的にアクセスできます。
<bean id="myTargetConnectionFactory" class="org.springframework.jndi.JndiObjectFactoryBean"> <property name="jndiName" value="java:comp/env/cci/mycf"/> </bean> <bean id="myConnectionFactory" class="org.springframework.jca.cci.connection.ConnectionSpecConnectionFactoryAdapter"> <property name="targetConnectionFactory" ref="myTargetConnectionFactory"/> <property name="connectionSpec"> <bean class="your.resource.adapter.ConnectionSpecImpl"> <property name="username" value="myusername"/> <property name="password" value="mypassword"/> </bean> </property> </bean>
"connectionSpec" が空の場合、このプロキシはターゲット ConnectionFactory の標準 getConnection()
メソッドに委譲するだけです。これを使用すると、特定のターゲット ConnectionFactory で必要な場合に暗黙的に ConnectionSpec を渡すオプションのためだけに、UserCredentialsConnectionFactoryAdapter Bean 定義を保持できます。
getConnection()
, 直列化された形式 コンストラクターと説明 |
---|
ConnectionSpecConnectionFactoryAdapter() |
修飾子と型 | メソッドと説明 |
---|---|
protected ConnectionEE | doGetConnection(ConnectionSpecEE spec) この実装は、ターゲット ConnectionFactory の getConnection(ConnectionSpec) メソッドに委譲し、指定されたユーザー資格情報を渡します。 |
ConnectionEE | getConnection() 現在スレッドにバインドされた ConnectionSpec があるかどうかを判断し、使用可能な場合はそれを使用し、そうでない場合は静的に指定された "connectionSpec" プロパティにフォールバックします。 |
void | removeConnectionSpecFromCurrentThread() 現在のスレッドからこのプロキシの ConnectionSpec を削除します。 |
void | setConnectionSpec(ConnectionSpecEE connectionSpec) このアダプターが接続の取得に使用する ConnectionSpec を設定します。 |
void | setConnectionSpecForCurrentThread(ConnectionSpecEE spec) このプロキシと現在のスレッドに ConnectionSpec を設定します。 |
afterPropertiesSet, getConnection, getMetaData, getRecordFactory, getReference, getTargetConnectionFactory, obtainTargetConnectionFactory, setReference, setTargetConnectionFactory
cloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, toStringSE, waitSE, waitSE, waitSE
public void setConnectionSpec(ConnectionSpecEE connectionSpec)
public void setConnectionSpecForCurrentThread(ConnectionSpecEE spec)
getConnection()
呼び出しに適用されます。これにより、静的に指定された "connectionSpec" プロパティが上書きされます。
spec
- 適用する ConnectionSpecremoveConnectionSpecFromCurrentThread()
public void removeConnectionSpecFromCurrentThread()
public final ConnectionEE getConnection() throws ResourceExceptionEE
ConnectionFactoryEE
の getConnectionEE
DelegatingConnectionFactory
の getConnection
ResourceExceptionEE
doGetConnection(javax.resource.cci.ConnectionSpec)
protected ConnectionEE doGetConnection(@Nullable ConnectionSpecEE spec) throws ResourceExceptionEE
getConnection(ConnectionSpec)
メソッドに委譲し、指定されたユーザー資格情報を渡します。指定されたユーザー名が空の場合、ターゲット ConnectionFactory の標準 getConnection()
メソッドに委譲するだけです。spec
- 適用する ConnectionSpecResourceExceptionEE
ConnectionFactory.getConnection(javax.resource.cci.ConnectionSpec)
EE, ConnectionFactory.getConnection()
EE