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, toString
protected 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 ConnectionPool
ConcurrencyException
protected org.eclipse.persistence.internal.databaseaccess.Accessor getCachedConnection()
public boolean hasConnectionAvailable()
hasConnectionAvailable
in class ConnectionPool
public boolean isThereConflictBetweenLoginAndType()
isThereConflictBetweenLoginAndType
in class ConnectionPool
public void releaseConnection(org.eclipse.persistence.internal.databaseaccess.Accessor connection) throws DatabaseException
releaseConnection
in class ConnectionPool
DatabaseException
protected void setCachedConnection(org.eclipse.persistence.internal.databaseaccess.Accessor cachedConnection)
cachedConnection
- public void setCheckConnections()
setCheckConnections
in class ConnectionPool
public void shutDown()
shutDown
in class ConnectionPool
public void startUp()
startUp
in class ConnectionPool