public final class ConnectionPoolManager
extends java.lang.Object
implements weblogic.common.resourcepool.ObjectLifeCycle, java.rmi.Remote
Modifier and Type | Field and Description |
---|---|
private AuthorizationManager |
am |
private static java.util.HashMap |
cpList |
private static java.util.HashMap |
hacpList |
private static weblogic.security.acl.internal.AuthenticatedSubject |
KERNELID |
private static java.lang.Object |
lockObject |
private static java.util.HashMap |
mpList |
Constructor and Description |
---|
ConnectionPoolManager() |
Modifier and Type | Method and Description |
---|---|
private static void |
addPool(java.util.HashMap poolList,
java.lang.String poolName,
java.lang.String appName,
java.lang.String moduleName,
java.lang.String compName,
java.lang.Object pool) |
static void |
addPool(java.lang.String poolName,
java.lang.String appName,
java.lang.String moduleName,
java.lang.String compName,
JDBCConnectionPool pool)
Add the specified pool to the list of pools.
|
private static void |
checkAndRemoveUnpooledConnection(ConnectionEnv cc,
JDBCConnectionPool cp)
Checks whether the datasource is configured to disable-pooling.
|
java.lang.Object |
createAndStartPool(JDBCDataSourceBean dsBean,
java.lang.String appName,
java.lang.String moduleName,
java.lang.String compName) |
java.lang.Object |
createAndStartPool(JDBCDataSourceBean dsBean,
java.lang.String appName,
java.lang.String moduleName,
java.lang.String compName,
boolean isMemberDS,
boolean isMemberLLR) |
java.lang.Object |
createAndStartPool(JDBCDataSourceBean dsBean,
java.lang.String appName,
java.lang.String moduleName,
java.lang.String compName,
java.lang.ClassLoader classLoader) |
java.lang.Object |
createAndStartPool(JDBCDataSourceBean dsBean,
java.lang.String appName,
java.lang.String moduleName,
java.lang.String compName,
java.lang.ClassLoader classLoader,
boolean isMemberDS,
boolean isMemberLLR) |
void |
forceSuspend(boolean shuttingDown) |
static java.util.Iterator |
getConnectionPools()
Returns all the connection pools known to this manager.
|
static JDBCConnectionPool[] |
getConnectionPools(java.lang.String poolName,
java.lang.String appName,
java.lang.String moduleName,
java.lang.String compName)
Return the conn pools matching the name specified.
|
static JDBCConnectionPool |
getHAPool(java.lang.String poolName,
java.lang.String appName,
java.lang.String moduleName,
java.lang.String compName) |
private static weblogic.security.acl.internal.AuthenticatedSubject |
getKernelID() |
static java.lang.Object |
getLockObject() |
static MultiPool |
getMultiPool(java.lang.String poolName,
java.lang.String applicationName,
java.lang.String moduleName,
java.lang.String compName) |
static java.util.Iterator |
getMultiPools()
Returns all the multipools known to this manager.
|
private static java.lang.Object |
getPool(java.util.HashMap poolList,
java.lang.String poolName,
java.lang.String appName,
java.lang.String moduleName,
java.lang.String compName) |
static JDBCConnectionPool |
getPool(java.lang.String poolName)
Return the specified Connection Pool
|
static JDBCConnectionPool |
getPool(java.lang.String poolName,
java.lang.String appName,
java.lang.String moduleName,
java.lang.String compName) |
private static java.util.Collection |
getPools(java.util.HashMap poolList) |
private static boolean |
poolExists(java.util.HashMap poolList,
java.lang.String poolName,
java.lang.String appName,
java.lang.String moduleName,
java.lang.String compName) |
static boolean |
poolExists(java.lang.String poolName,
java.lang.String appName,
java.lang.String moduleName,
java.lang.String compName)
Check if the specified Multi Pool or Connection Pool exists
|
static void |
release(ConnectionEnv cc)
Release the resource back to the pool
|
private static java.lang.Object |
removePool(java.util.HashMap poolList,
java.lang.String poolName,
java.lang.String appName,
java.lang.String moduleName,
java.lang.String compName) |
static JDBCConnectionPool |
removePool(java.lang.String poolName,
java.lang.String appName,
java.lang.String moduleName,
java.lang.String compName)
Remove the specified pool from the list of pools.
|
static ConnectionEnv |
reserve(weblogic.security.acl.internal.AuthenticatedSubject user,
java.lang.String poolName,
java.lang.String appName,
java.lang.String moduleName,
java.lang.String compName) |
static ConnectionEnv |
reserve(weblogic.security.acl.internal.AuthenticatedSubject user,
java.lang.String poolName,
java.lang.String appName,
java.lang.String moduleName,
java.lang.String compName,
int waitSeconds)
Reserve a resource from the specified pool and application.
|
static ConnectionEnv |
reserve(weblogic.security.acl.internal.AuthenticatedSubject user,
java.lang.String poolName,
java.lang.String appName,
java.lang.String moduleName,
java.lang.String compName,
int waitSeconds,
java.util.Properties requestedLabels) |
static ConnectionEnv |
reserve(weblogic.security.acl.internal.AuthenticatedSubject user,
java.lang.String poolName,
java.lang.String appName,
java.lang.String moduleName,
java.lang.String compName,
int waitSeconds,
java.util.Properties requestedLabels,
java.lang.String username,
java.lang.String password) |
static ConnectionEnv |
reserve(weblogic.security.acl.internal.AuthenticatedSubject user,
java.lang.String poolName,
java.lang.String appName,
java.lang.String moduleName,
java.lang.String compName,
java.util.Properties labels) |
static ConnectionEnv |
reserve(weblogic.security.acl.internal.AuthenticatedSubject user,
java.lang.String poolName,
java.lang.String appName,
java.lang.String moduleName,
java.lang.String compName,
java.util.Properties labels,
java.lang.String username,
java.lang.String password) |
static ConnectionEnv |
reserve(java.lang.String poolName,
java.lang.String appName,
java.lang.String moduleName,
java.lang.String compName,
int waitSeconds) |
static ConnectionEnv |
reserve(java.lang.String poolName,
java.lang.String appName,
java.lang.String moduleName,
java.lang.String compName,
int waitSeconds,
java.util.Properties requestedLabels) |
static ConnectionEnv |
reserve(java.lang.String poolName,
java.lang.String appName,
java.lang.String moduleName,
java.lang.String compName,
int waitSeconds,
java.util.Properties requestedLabels,
java.lang.String username,
java.lang.String password) |
void |
resume() |
static void |
setDataSource(java.lang.String poolName,
java.lang.String applicationName,
java.lang.String moduleName,
java.lang.String compName,
weblogic.jdbc.jta.DataSource ds) |
void |
shutdown() |
void |
shutdownAndDestroyPool(JDBCDataSourceBean dsBean,
java.lang.String appName,
java.lang.String moduleName,
java.lang.String compName) |
void |
shutdownAndDestroyPool(java.lang.String poolName,
java.lang.String appName,
java.lang.String moduleName,
java.lang.String compName) |
private void |
shutdownAndRemoveConnectionPool(JDBCConnectionPool cp) |
private void |
shutdownConnectionPool(java.lang.String name,
java.lang.String appName,
java.lang.String moduleName,
java.lang.String compName) |
private void |
shutdownMultiPool(java.lang.String name,
java.lang.String appName,
java.lang.String moduleName,
java.lang.String compName) |
void |
start(java.lang.Object unused) |
void |
suspend(boolean shuttingDown) |
private void |
validateSharedPoolConfiguration(JDBCDataSourceBean dsBean1,
JDBCDataSourceBean dsBean2) |
private void |
validateStaticSharedPoolConfiguration(JDBCDataSourceBean sharingBean,
JDBCDataSourceBean sharedBean) |
private static java.util.HashMap cpList
private static java.util.HashMap mpList
private static java.util.HashMap hacpList
private static java.lang.Object lockObject
private AuthorizationManager am
private static final weblogic.security.acl.internal.AuthenticatedSubject KERNELID
private static weblogic.security.acl.internal.AuthenticatedSubject getKernelID()
public static ConnectionEnv reserve(java.lang.String poolName, java.lang.String appName, java.lang.String moduleName, java.lang.String compName, int waitSeconds) throws ResourceException, java.sql.SQLException
ResourceException
java.sql.SQLException
public static ConnectionEnv reserve(java.lang.String poolName, java.lang.String appName, java.lang.String moduleName, java.lang.String compName, int waitSeconds, java.util.Properties requestedLabels) throws ResourceException, java.sql.SQLException
ResourceException
java.sql.SQLException
public static ConnectionEnv reserve(java.lang.String poolName, java.lang.String appName, java.lang.String moduleName, java.lang.String compName, int waitSeconds, java.util.Properties requestedLabels, java.lang.String username, java.lang.String password) throws ResourceException, java.sql.SQLException
ResourceException
java.sql.SQLException
public static ConnectionEnv reserve(weblogic.security.acl.internal.AuthenticatedSubject user, java.lang.String poolName, java.lang.String appName, java.lang.String moduleName, java.lang.String compName, int waitSeconds) throws ResourceException, java.sql.SQLException
user
- poolName,
- cannot be nullappName
- name of applicationmoduleName
- name of application modulecompName
- name of application componentwaitSeconds
- -1 : don't wait (non-blocking)
>0 : wait for specified # seconds (blocking with timeout)
0 : wait for ever (blocking)ResourceException
- if "poolName" is nulljava.sql.SQLException
public static ConnectionEnv reserve(weblogic.security.acl.internal.AuthenticatedSubject user, java.lang.String poolName, java.lang.String appName, java.lang.String moduleName, java.lang.String compName, int waitSeconds, java.util.Properties requestedLabels) throws ResourceException, java.sql.SQLException
ResourceException
java.sql.SQLException
public static ConnectionEnv reserve(weblogic.security.acl.internal.AuthenticatedSubject user, java.lang.String poolName, java.lang.String appName, java.lang.String moduleName, java.lang.String compName, int waitSeconds, java.util.Properties requestedLabels, java.lang.String username, java.lang.String password) throws ResourceException, java.sql.SQLException
ResourceException
java.sql.SQLException
public static ConnectionEnv reserve(weblogic.security.acl.internal.AuthenticatedSubject user, java.lang.String poolName, java.lang.String appName, java.lang.String moduleName, java.lang.String compName) throws ResourceException, java.sql.SQLException
ResourceException
java.sql.SQLException
public static ConnectionEnv reserve(weblogic.security.acl.internal.AuthenticatedSubject user, java.lang.String poolName, java.lang.String appName, java.lang.String moduleName, java.lang.String compName, java.util.Properties labels) throws ResourceException, java.sql.SQLException
ResourceException
java.sql.SQLException
public static ConnectionEnv reserve(weblogic.security.acl.internal.AuthenticatedSubject user, java.lang.String poolName, java.lang.String appName, java.lang.String moduleName, java.lang.String compName, java.util.Properties labels, java.lang.String username, java.lang.String password) throws ResourceException, java.sql.SQLException
ResourceException
java.sql.SQLException
public static void release(ConnectionEnv cc) throws ResourceException
resource
- to be releasedResourceException
- if "resource" is nullprivate static void checkAndRemoveUnpooledConnection(ConnectionEnv cc, JDBCConnectionPool cp)
public static java.util.Iterator getConnectionPools()
public static java.util.Iterator getMultiPools()
public static java.lang.Object getLockObject()
public static JDBCConnectionPool[] getConnectionPools(java.lang.String poolName, java.lang.String appName, java.lang.String moduleName, java.lang.String compName) throws ResourceException
poolName,
- cannot be nullappName
- ResourceException
- if "poolName" is null or pool(s) not found.public static MultiPool getMultiPool(java.lang.String poolName, java.lang.String applicationName, java.lang.String moduleName, java.lang.String compName) throws ResourceException
ResourceException
public static JDBCConnectionPool getPool(java.lang.String poolName) throws ResourceException
poolName,
- cannot be nullResourceException
- if "poolName" is nullpublic static JDBCConnectionPool getPool(java.lang.String poolName, java.lang.String appName, java.lang.String moduleName, java.lang.String compName) throws ResourceException
ResourceException
public static JDBCConnectionPool getHAPool(java.lang.String poolName, java.lang.String appName, java.lang.String moduleName, java.lang.String compName) throws ResourceException
ResourceException
public static boolean poolExists(java.lang.String poolName, java.lang.String appName, java.lang.String moduleName, java.lang.String compName) throws ResourceException
poolName,
- cannot be nullappName
- moduleName
- compName
- ResourceException
- if "poolName" is nullpublic static void addPool(java.lang.String poolName, java.lang.String appName, java.lang.String moduleName, java.lang.String compName, JDBCConnectionPool pool) throws ResourceException
poolName,
- cannot be nullappName
- moduleName
- compName
- pool
- pool to add to listResourceException
- if "poolName" is nullpublic static JDBCConnectionPool removePool(java.lang.String poolName, java.lang.String appName, java.lang.String moduleName, java.lang.String compName) throws ResourceException
poolName,
- cannot be nullappName
- moduleName
- compName
- ResourceException
- if "poolName" is nullpublic void start(java.lang.Object unused) throws ResourceException
start
in interface weblogic.common.resourcepool.ObjectLifeCycle
ResourceException
public void resume() throws ResourceException
resume
in interface weblogic.common.resourcepool.ObjectLifeCycle
ResourceException
public void suspend(boolean shuttingDown) throws ResourceException
suspend
in interface weblogic.common.resourcepool.ObjectLifeCycle
ResourceException
public void forceSuspend(boolean shuttingDown) throws ResourceException
forceSuspend
in interface weblogic.common.resourcepool.ObjectLifeCycle
ResourceException
public void shutdown() throws ResourceException
shutdown
in interface weblogic.common.resourcepool.ObjectLifeCycle
ResourceException
public java.lang.Object createAndStartPool(JDBCDataSourceBean dsBean, java.lang.String appName, java.lang.String moduleName, java.lang.String compName) throws ResourceException
ResourceException
public java.lang.Object createAndStartPool(JDBCDataSourceBean dsBean, java.lang.String appName, java.lang.String moduleName, java.lang.String compName, java.lang.ClassLoader classLoader) throws ResourceException
ResourceException
public java.lang.Object createAndStartPool(JDBCDataSourceBean dsBean, java.lang.String appName, java.lang.String moduleName, java.lang.String compName, boolean isMemberDS, boolean isMemberLLR) throws ResourceException
ResourceException
public java.lang.Object createAndStartPool(JDBCDataSourceBean dsBean, java.lang.String appName, java.lang.String moduleName, java.lang.String compName, java.lang.ClassLoader classLoader, boolean isMemberDS, boolean isMemberLLR) throws ResourceException
ResourceException
public void shutdownAndDestroyPool(JDBCDataSourceBean dsBean, java.lang.String appName, java.lang.String moduleName, java.lang.String compName) throws ResourceException
ResourceException
public void shutdownAndDestroyPool(java.lang.String poolName, java.lang.String appName, java.lang.String moduleName, java.lang.String compName) throws ResourceException
ResourceException
private void shutdownMultiPool(java.lang.String name, java.lang.String appName, java.lang.String moduleName, java.lang.String compName) throws ResourceException
ResourceException
private void shutdownConnectionPool(java.lang.String name, java.lang.String appName, java.lang.String moduleName, java.lang.String compName) throws ResourceException
ResourceException
private void shutdownAndRemoveConnectionPool(JDBCConnectionPool cp) throws ResourceException
ResourceException
private static void addPool(java.util.HashMap poolList, java.lang.String poolName, java.lang.String appName, java.lang.String moduleName, java.lang.String compName, java.lang.Object pool) throws ResourceException
ResourceException
private static java.lang.Object removePool(java.util.HashMap poolList, java.lang.String poolName, java.lang.String appName, java.lang.String moduleName, java.lang.String compName) throws ResourceException
ResourceException
private static java.lang.Object getPool(java.util.HashMap poolList, java.lang.String poolName, java.lang.String appName, java.lang.String moduleName, java.lang.String compName) throws ResourceException
ResourceException
private static boolean poolExists(java.util.HashMap poolList, java.lang.String poolName, java.lang.String appName, java.lang.String moduleName, java.lang.String compName) throws ResourceException
ResourceException
private static java.util.Collection getPools(java.util.HashMap poolList)
public static void setDataSource(java.lang.String poolName, java.lang.String applicationName, java.lang.String moduleName, java.lang.String compName, weblogic.jdbc.jta.DataSource ds) throws ResourceException
ResourceException
private void validateStaticSharedPoolConfiguration(JDBCDataSourceBean sharingBean, JDBCDataSourceBean sharedBean) throws ResourceException
ResourceException
private void validateSharedPoolConfiguration(JDBCDataSourceBean dsBean1, JDBCDataSourceBean dsBean2) throws ResourceException
ResourceException