public class ExternalConnectionPool extends ConnectionPool
Purpose: This subclass is intended to be used with external connection pools. For these pools, TopLink does not control the pooling behavior. The login should have the usesExternalConnectionPooling set to "true".
| Modifier and Type | Field and Description |
|---|---|
protected org.eclipse.persistence.internal.databaseaccess.Accessor |
cachedConnection |
checkConnections, connectionsAvailable, connectionsUsed, DEAD_CHECK_TIME, deadCheckTime, failoverConnectionPools, INITIAL_CONNECTIONS, initialNumberOfConnections, isConnected, isDead, login, MAX_CONNECTIONS, maxNumberOfConnections, MIN_CONNECTIONS, minNumberOfConnections, MONITOR_HEADER, name, owner, timeOfDeath, WAIT_TIMEOUT, waitTimeout| Constructor and Description |
|---|
ExternalConnectionPool()
PUBLIC:
Build a new external connection pool.
|
ExternalConnectionPool(java.lang.String name,
Login login,
ServerSession owner)
PUBLIC:
Build a new external connection pool.
|
| Modifier and Type | Method and Description |
|---|---|
org.eclipse.persistence.internal.databaseaccess.Accessor |
acquireConnection()
INTERNAL:
When we acquire a connection from an ExternalConnectionPool we build
a new connection (retrieve it from the external pool).
|
protected org.eclipse.persistence.internal.databaseaccess.Accessor |
getCachedConnection()
INTERNAL:
Return the currently cached connection to the external connection pool
|
boolean |
hasConnectionAvailable()
INTERNAL:
Assume true as the driver is responsible for blocking.
|
boolean |
isThereConflictBetweenLoginAndType()
INTERNAL:
Checks for a conflict between pool's type and pool's login
|
void |
releaseConnection(org.eclipse.persistence.internal.databaseaccess.Accessor connection)
INTERNAL:
When you release an external connection, you simply let it go.
|
protected void |
setCachedConnection(org.eclipse.persistence.internal.databaseaccess.Accessor cachedConnection)
Set the currently cached connection to the external connection pool.
|
void |
setCheckConnections()
INTERNAL:
This method is called to indicate that all available connections should be checked.
|
void |
shutDown()
INTERNAL:
This mehtod is a no-op for external pools.
|
void |
startUp()
INTERNAL:
Build the default connection.
|
addFailoverConnectionPool, buildConnection, failover, getConnectionsAvailable, getConnectionsUsed, getFailoverConnectionPools, getInitialNumberOfConnections, getLogin, getMaxNumberOfConnections, getMinNumberOfConnections, getName, getOwner, getTotalNumberOfConnections, getWaitTimeout, isConnected, isDead, resetConnections, setConnectionsAvailable, setConnectionsUsed, setFailoverConnectionPools, setInitialNumberOfConnections, setIsConnected, setIsDead, setLogin, setMaxNumberOfConnections, setMinNumberOfConnections, setName, setOwner, setWaitTimeout, toStringprotected org.eclipse.persistence.internal.databaseaccess.Accessor cachedConnection
public ExternalConnectionPool()
public ExternalConnectionPool(java.lang.String name,
Login login,
ServerSession owner)
public org.eclipse.persistence.internal.databaseaccess.Accessor acquireConnection()
throws ConcurrencyException
acquireConnection in class ConnectionPoolConcurrencyExceptionprotected org.eclipse.persistence.internal.databaseaccess.Accessor getCachedConnection()
public boolean hasConnectionAvailable()
hasConnectionAvailable in class ConnectionPoolpublic boolean isThereConflictBetweenLoginAndType()
isThereConflictBetweenLoginAndType in class ConnectionPoolpublic void releaseConnection(org.eclipse.persistence.internal.databaseaccess.Accessor connection)
throws DatabaseException
releaseConnection in class ConnectionPoolDatabaseExceptionprotected void setCachedConnection(org.eclipse.persistence.internal.databaseaccess.Accessor cachedConnection)
org.eclipse.persistence.internal.databaseaccess.Accessor - public void setCheckConnections()
setCheckConnections in class ConnectionPoolpublic void shutDown()
shutDown in class ConnectionPoolpublic void startUp()
startUp in class ConnectionPool