| java.lang.Object org.apache.commons.dbcp.datasources.InstanceKeyDataSource org.apache.commons.dbcp.datasources.PerUserPoolDataSource
PerUserPoolDataSource | public class PerUserPoolDataSource extends InstanceKeyDataSource (Code) | |
A pooling DataSource appropriate for deployment within
J2EE environment. There are many configuration options, most of which are
defined in the parent class. This datasource uses individual pools per
user, and some properties can be set specifically for a given user, if the
deployment environment can support initialization of mapped properties.
So for example, a pool of admin or write-access Connections can be
guaranteed a certain number of connections, separate from a maximum
set for users with read-only connections.
author: John D. McNally version: $Revision: 500687 $ $Date: 2007-01-27 16:33:47 -0700 (Sat, 27 Jan 2007) $ |
Method Summary | |
public void | close() Close pool(s) being maintained by this datasource. | public int | getDefaultMaxActive() The maximum number of active connections that can be allocated from
this pool at the same time, or non-positive for no limit. | public int | getDefaultMaxIdle() The maximum number of active connections that can remain idle in the
pool, without extra ones being released, or negative for no limit. | public int | getDefaultMaxWait() The maximum number of milliseconds that the pool will wait (when there
are no available connections) for a connection to be returned before
throwing an exception, or -1 to wait indefinitely. | public int | getNumActive() Get the number of active connections in the default pool. | public int | getNumActive(String username, String password) Get the number of active connections in the pool for a given user. | public int | getNumIdle() Get the number of idle connections in the default pool. | public int | getNumIdle(String username, String password) Get the number of idle connections in the pool for a given user. | public Boolean | getPerUserDefaultAutoCommit(String key) The keys are usernames and the value is the --. | public Boolean | getPerUserDefaultReadOnly(String username) The keys are usernames and the value is the --. | public Integer | getPerUserDefaultTransactionIsolation(String username) The isolation level of connections when returned from getConnection. | public Integer | getPerUserMaxActive(String username) The maximum number of active connections that can be allocated from
this pool at the same time, or non-positive for no limit.
The keys are usernames and the value is the maximum connections. | public Integer | getPerUserMaxIdle(String username) The maximum number of active connections that can remain idle in the
pool, without extra ones being released, or negative for no limit.
The keys are usernames and the value is the maximum connections. | public Integer | getPerUserMaxWait(String username) The maximum number of milliseconds that the pool will wait (when there
are no available connections) for a connection to be returned before
throwing an exception, or -1 to wait indefinitely. | protected synchronized PooledConnectionAndInfo | getPooledConnectionAndInfo(String username, String password) | public Reference | getReference() Returns a PerUserPoolDataSource
Reference . | public void | setDefaultMaxActive(int maxActive) The maximum number of active connections that can be allocated from
this pool at the same time, or non-positive for no limit.
This value is used for any username which is not specified
in perUserMaxConnections. | public void | setDefaultMaxIdle(int defaultMaxIdle) The maximum number of active connections that can remain idle in the
pool, without extra ones being released, or negative for no limit.
This value is used for any username which is not specified
in perUserMaxIdle. | public void | setDefaultMaxWait(int defaultMaxWait) The maximum number of milliseconds that the pool will wait (when there
are no available connections) for a connection to be returned before
throwing an exception, or -1 to wait indefinitely. | public void | setPerUserDefaultAutoCommit(String username, Boolean value) The keys are usernames and the value is the --. | public void | setPerUserDefaultReadOnly(String username, Boolean value) The keys are usernames and the value is the --. | public void | setPerUserDefaultTransactionIsolation(String username, Integer value) The isolation level of connections when returned from getConnection. | public void | setPerUserMaxActive(String username, Integer value) The maximum number of active connections that can be allocated from
this pool at the same time, or non-positive for no limit.
The keys are usernames and the value is the maximum connections. | public void | setPerUserMaxIdle(String username, Integer value) The maximum number of active connections that can remain idle in the
pool, without extra ones being released, or negative for no limit.
The keys are usernames and the value is the maximum connections. | public void | setPerUserMaxWait(String username, Integer value) The maximum number of milliseconds that the pool will wait (when there
are no available connections) for a connection to be returned before
throwing an exception, or -1 to wait indefinitely. | protected void | setupDefaults(Connection con, String username) |
perUserDefaultAutoCommit | Map perUserDefaultAutoCommit(Code) | | |
perUserDefaultReadOnly | Map perUserDefaultReadOnly(Code) | | |
perUserDefaultTransactionIsolation | Map perUserDefaultTransactionIsolation(Code) | | |
PerUserPoolDataSource | public PerUserPoolDataSource()(Code) | | Default no-arg constructor for Serialization
|
close | public void close()(Code) | | Close pool(s) being maintained by this datasource.
|
getDefaultMaxActive | public int getDefaultMaxActive()(Code) | | The maximum number of active connections that can be allocated from
this pool at the same time, or non-positive for no limit.
This value is used for any username which is not specified
in perUserMaxConnections.
|
getDefaultMaxIdle | public int getDefaultMaxIdle()(Code) | | The maximum number of active connections that can remain idle in the
pool, without extra ones being released, or negative for no limit.
This value is used for any username which is not specified
in perUserMaxIdle.
|
getDefaultMaxWait | public int getDefaultMaxWait()(Code) | | The maximum number of milliseconds that the pool will wait (when there
are no available connections) for a connection to be returned before
throwing an exception, or -1 to wait indefinitely. Will fail
immediately if value is 0.
This value is used for any username which is not specified
in perUserMaxWait. The default is -1.
|
getNumActive | public int getNumActive()(Code) | | Get the number of active connections in the default pool.
|
getNumActive | public int getNumActive(String username, String password)(Code) | | Get the number of active connections in the pool for a given user.
|
getNumIdle | public int getNumIdle()(Code) | | Get the number of idle connections in the default pool.
|
getNumIdle | public int getNumIdle(String username, String password)(Code) | | Get the number of idle connections in the pool for a given user.
|
getPerUserDefaultAutoCommit | public Boolean getPerUserDefaultAutoCommit(String key)(Code) | | The keys are usernames and the value is the --. Any
username specified here will override the value of defaultAutoCommit.
|
getPerUserDefaultReadOnly | public Boolean getPerUserDefaultReadOnly(String username)(Code) | | The keys are usernames and the value is the --. Any
username specified here will override the value of defaultReadOnly.
|
getPerUserDefaultTransactionIsolation | public Integer getPerUserDefaultTransactionIsolation(String username)(Code) | | The isolation level of connections when returned from getConnection.
If null, the username will use the value of defaultTransactionIsolation.
|
getPerUserMaxActive | public Integer getPerUserMaxActive(String username)(Code) | | The maximum number of active connections that can be allocated from
this pool at the same time, or non-positive for no limit.
The keys are usernames and the value is the maximum connections. Any
username specified here will override the value of defaultMaxActive.
|
getPerUserMaxIdle | public Integer getPerUserMaxIdle(String username)(Code) | | The maximum number of active connections that can remain idle in the
pool, without extra ones being released, or negative for no limit.
The keys are usernames and the value is the maximum connections. Any
username specified here will override the value of defaultMaxIdle.
|
getPerUserMaxWait | public Integer getPerUserMaxWait(String username)(Code) | | The maximum number of milliseconds that the pool will wait (when there
are no available connections) for a connection to be returned before
throwing an exception, or -1 to wait indefinitely. Will fail
immediately if value is 0.
The keys are usernames and the value is the maximum connections. Any
username specified here will override the value of defaultMaxWait.
|
setDefaultMaxActive | public void setDefaultMaxActive(int maxActive)(Code) | | The maximum number of active connections that can be allocated from
this pool at the same time, or non-positive for no limit.
This value is used for any username which is not specified
in perUserMaxConnections. The default is 8.
|
setDefaultMaxIdle | public void setDefaultMaxIdle(int defaultMaxIdle)(Code) | | The maximum number of active connections that can remain idle in the
pool, without extra ones being released, or negative for no limit.
This value is used for any username which is not specified
in perUserMaxIdle. The default is 8.
|
setDefaultMaxWait | public void setDefaultMaxWait(int defaultMaxWait)(Code) | | The maximum number of milliseconds that the pool will wait (when there
are no available connections) for a connection to be returned before
throwing an exception, or -1 to wait indefinitely. Will fail
immediately if value is 0.
This value is used for any username which is not specified
in perUserMaxWait. The default is -1.
|
setPerUserDefaultAutoCommit | public void setPerUserDefaultAutoCommit(String username, Boolean value)(Code) | | The keys are usernames and the value is the --. Any
username specified here will override the value of defaultAutoCommit.
|
setPerUserDefaultReadOnly | public void setPerUserDefaultReadOnly(String username, Boolean value)(Code) | | The keys are usernames and the value is the --. Any
username specified here will override the value of defaultReadOnly.
|
setPerUserDefaultTransactionIsolation | public void setPerUserDefaultTransactionIsolation(String username, Integer value)(Code) | | The isolation level of connections when returned from getConnection.
Valid values are the constants defined in Connection.
|
setPerUserMaxActive | public void setPerUserMaxActive(String username, Integer value)(Code) | | The maximum number of active connections that can be allocated from
this pool at the same time, or non-positive for no limit.
The keys are usernames and the value is the maximum connections. Any
username specified here will override the value of defaultMaxActive.
|
setPerUserMaxIdle | public void setPerUserMaxIdle(String username, Integer value)(Code) | | The maximum number of active connections that can remain idle in the
pool, without extra ones being released, or negative for no limit.
The keys are usernames and the value is the maximum connections. Any
username specified here will override the value of defaultMaxIdle.
|
setPerUserMaxWait | public void setPerUserMaxWait(String username, Integer value)(Code) | | The maximum number of milliseconds that the pool will wait (when there
are no available connections) for a connection to be returned before
throwing an exception, or -1 to wait indefinitely. Will fail
immediately if value is 0.
The keys are usernames and the value is the maximum connections. Any
username specified here will override the value of defaultMaxWait.
|
|
|