com.sun.jndi.ldap.pool |
|
Java Source File Name | Type | Comment |
ConnectionDesc.java | Class | Represents a description of PooledConnection in Connections. |
Connections.java | Class | Represents a list of PooledConnections (actually, ConnectionDescs) with the
same pool id.
The list starts out with an initial number of connections. |
ConnectionsRef.java | Class | Is a reference to Connections that is stored in Pool.
This is an intermediate object that is outside of the circular
reference loop of
com.sun.jndi.ldap.Connection <-> com.sun.jndi.ldap.LdapClient
<-> com.sun.jndi.ldap.pool.Connections
Because Connection is a daemon thread, it will keep LdapClient
alive until LdapClient closes Connection. |
ConnectionsWeakRef.java | Class | |
Pool.java | Class | A map of pool ids to Connections.
Key is an object that uniquely identifies a PooledConnection request
(typically information needed to create the connection).
The definitions of the key's equals() and hashCode() methods are
vital to its unique identification in a Pool.
Value is a ConnectionsRef, which is a reference to Connections,
a list of equivalent connections.
Supports methods that
- retrieves (or creates as necessary) a connection from the pool
- removes expired connections from the pool
Connections cleanup:
A WeakHashMap is used for mapping the pool ids and Connections.
A SoftReference from the value to the key is kept to hold the map
entry as long as possible. |
PoolCallback.java | Interface | Represents a callback used to release or remove a PooledConnection back
into the pool.
A pooled connection typically has a close method that its clients
use to indicate that they no longer need the connection. |
PoolCleaner.java | Class | Thread that wakes up periodically and closes expired, unused connections. |
PooledConnection.java | Interface | Represents a connection that is managed in a pool. |
PooledConnectionFactory.java | Interface | Represents a factory that creates PooledConnection. |