public class SharedPoolDataSource extends InstanceKeyDataSource
A pooling DataSource
appropriate for deployment within
J2EE environment. There are many configuration options, most of which are
defined in the parent class. All users (based on username) share a single
maximum number of Connections in this datasource.
User passwords can be changed without re-initializing the datasource.
When a getConnection(username, password)
request is processed
with a password that is different from those used to create connections in the
pool associated with username
, an attempt is made to create a
new connection using the supplied password and if this succeeds, idle connections
created using the old password are destroyed and new connections are created
using the new password.
instanceKey, UNKNOWN_TRANSACTIONISOLATION
Constructor and Description |
---|
SharedPoolDataSource()
Default no-arg constructor for Serialization
|
Modifier and Type | Method and Description |
---|---|
void |
close()
Close pool being maintained by this datasource.
|
protected org.datanucleus.store.rdbms.datasource.dbcp.datasources.PooledConnectionManager |
getConnectionManager(org.datanucleus.store.rdbms.datasource.dbcp.datasources.UserPassKey upkey) |
int |
getMaxActive() |
int |
getMaxIdle() |
int |
getMaxWait() |
int |
getNumActive() |
int |
getNumIdle() |
Logger |
getParentLogger() |
protected org.datanucleus.store.rdbms.datasource.dbcp.datasources.PooledConnectionAndInfo |
getPooledConnectionAndInfo(String username,
String password) |
Reference |
getReference() |
void |
setMaxActive(int maxActive) |
void |
setMaxIdle(int maxIdle) |
void |
setMaxWait(int maxWait) |
protected void |
setupDefaults(Connection con,
String username) |
assertInitializationAllowed, getConnection, getConnection, getConnectionPoolDataSource, getDataSourceName, getDefaultTransactionIsolation, getDescription, getJndiEnvironment, getLoginTimeout, getLogWriter, getMinEvictableIdleTimeMillis, getNumTestsPerEvictionRun, getTestOnBorrow, getTestOnReturn, getTestWhileIdle, getTimeBetweenEvictionRunsMillis, getValidationQuery, isDefaultAutoCommit, isDefaultReadOnly, isRollbackAfterValidation, isTestOnBorrow, isTestOnReturn, isTestWhileIdle, isWrapperFor, setConnectionPoolDataSource, setDataSourceName, setDefaultAutoCommit, setDefaultReadOnly, setDefaultTransactionIsolation, setDescription, setJndiEnvironment, setLoginTimeout, setLogWriter, setMinEvictableIdleTimeMillis, setNumTestsPerEvictionRun, setRollbackAfterValidation, setTestOnBorrow, setTestOnReturn, setTestWhileIdle, setTimeBetweenEvictionRunsMillis, setValidationQuery, testCPDS, unwrap, whenExhaustedAction
public SharedPoolDataSource()
public void close() throws Exception
close
in class InstanceKeyDataSource
Exception
public int getMaxActive()
public void setMaxActive(int maxActive)
public int getMaxIdle()
public void setMaxIdle(int maxIdle)
public int getMaxWait()
public void setMaxWait(int maxWait)
public int getNumActive()
public int getNumIdle()
protected org.datanucleus.store.rdbms.datasource.dbcp.datasources.PooledConnectionAndInfo getPooledConnectionAndInfo(String username, String password) throws SQLException
getPooledConnectionAndInfo
in class InstanceKeyDataSource
SQLException
protected org.datanucleus.store.rdbms.datasource.dbcp.datasources.PooledConnectionManager getConnectionManager(org.datanucleus.store.rdbms.datasource.dbcp.datasources.UserPassKey upkey)
getConnectionManager
in class InstanceKeyDataSource
public Reference getReference() throws NamingException
getReference
in interface Referenceable
getReference
in class InstanceKeyDataSource
NamingException
protected void setupDefaults(Connection con, String username) throws SQLException
setupDefaults
in class InstanceKeyDataSource
SQLException
public Logger getParentLogger() throws SQLFeatureNotSupportedException
SQLFeatureNotSupportedException
Copyright © 2017. All rights reserved.