public class ConnectionSpecConnectionFactoryAdapter extends DelegatingConnectionFactory
ConnectionFactoryEE のアダプター。指定された 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, setTargetConnectionFactorycloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, toStringSE, waitSE, waitSE, waitSEpublic 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 ResourceExceptionEEdoGetConnection(javax.resource.cci.ConnectionSpec)protected ConnectionEE doGetConnection(@Nullable ConnectionSpecEE spec) throws ResourceExceptionEE
getConnection(ConnectionSpec) メソッドに委譲し、指定されたユーザー資格情報を渡します。指定されたユーザー名が空の場合、ターゲット ConnectionFactory の標準 getConnection() メソッドに委譲するだけです。spec - 適用する ConnectionSpecResourceExceptionEEConnectionFactory.getConnection(javax.resource.cci.ConnectionSpec)EE, ConnectionFactory.getConnection()EE