com.pivotal.gemfirexd.internal.jdbc

## Class ClientConnectionPoolDataSource

- java.lang.Object
- - com.pivotal.gemfirexd.internal.jdbc.ClientBaseDataSource
  - - com.pivotal.gemfirexd.internal.jdbc.ClientDataSource
    - - com.pivotal.gemfirexd.internal.jdbc.ClientConnectionPoolDataSource

All Implemented Interfaces:
  Serializable, Wrapper, Referenceable, CommonDataSource, ConnectionPoolDataSource, DataSource

Direct Known Subclasses:
  ClientConnectionPoolDataSource40

    public class ClientConnectionPoolDataSource
    extends ClientDataSource
    implements ConnectionPoolDataSource

ClientConnectionPoolDataSource is a factory for PooledConnection objects. An object that implements this interface will typically be registered with a naming service that is based on the Java Naming and Directory Interface (JNDI). Use ClientConnectionPoolDataSource if your application runs under JDBC3.0 or JDBC2.0, that is, on the following Java Virtual Machines:

- JDBC 3.0 - Java 2 - JDK 1.4, J2SE 5.0
- JDBC 2.0 - Java 2 - JDK 1.2,1.3

See Also:
  Serialized Form

### Field Summary

Fields
`static String` `className__`

### Fields inherited from class com.pivotal.gemfirexd.internal.jdbc.ClientBaseDataSource

`CLEAR_TEXT_PASSWORD_SECURITY, connectionAttributes, ENCRYPTED_PASSWORD_SECURITY, ENCRYPTED_USER_AND_PASSWORD_SECURITY, propertyDefault_portNumber, propertyDefault_retrieveMessageText, propertyDefault_securityMechanism, propertyDefault_serverName, propertyDefault_traceFileAppend, propertyDefault_traceLevel, propertyDefault_user, securityMechanism, SSL_BASIC, SSL_OFF, SSL_PEER_AUTHENTICATION, STRONG_PASSWORD_SUBSTITUTE_SECURITY, TRACE_ALL, TRACE_CONNECTION_CALLS, TRACE_CONNECTS, TRACE_DIAGNOSTICS, TRACE_DRIVER_CONFIGURATION, TRACE_NONE, TRACE_PARAMETER_META_DATA, TRACE_PROTOCOL_FLOWS, TRACE_RESULT_SET_CALLS, TRACE_RESULT_SET_META_DATA, TRACE_STATEMENT_CALLS, TRACE_XA_CALLS, traceLevel, USER_ONLY_SECURITY`

### Constructor Summary

Constructors
Constructor and Description
`ClientConnectionPoolDataSource()`

### Method Summary

Methods
`int` `getMaxStatements()` Returns the maximum number of JDBC prepared statements a connection is allowed to cache.
`PooledConnection` `getPooledConnection()`
`PooledConnection` `getPooledConnection(String user, String password)`
`int` `maxStatementsToPool()` Internally used method.
`void` `setMaxStatements(int maxStatements)` Specifies the maximum size of the statement cache.

### Methods inherited from class com.pivotal.gemfirexd.internal.jdbc.ClientDataSource

`getConnection, getConnection, getParentLogger, isWrapperFor, unwrap`

### Methods inherited from class com.pivotal.gemfirexd.internal.jdbc.ClientBaseDataSource

`computeDncLogWriter, computeDncLogWriterForNewConnection, getClientSSLMode, getConnectionAttributes, getCreateDatabase, getDatabaseName, getDataSourceName, getDescription, getIsODBCDriver, getLoginTimeout, getLogWriter, getPassword, getPassword, getPortNumber, getReference, getRetrieveMessageText, getRetrieveMessageText, getSecurityMechanism, getSecurityMechanism, getSecurityMechanism, getServerName, getShutdownDatabase, getSsl, getSSLModeFromString, getTraceDirectory, getTraceDirectory, getTraceFile, getTraceFile, getTraceFileAppend, getTraceFileAppend, getTraceLevel, getTraceLevel, getUpgradedSecurityMechanism, getUser, getUser, readSystemProperty, setConnectionAttributes, setCreateDatabase, setDatabaseName, setDataSourceName, setDescription, setLoginTimeout, setLogWriter, setPassword, setPassword, setPortNumber, setRetrieveMessageText, setSecurityMechanism, setSecurityMechanism, setServerName, setShutdownDatabase, setSsl, setSsl, setTraceDirectory, setTraceFile, setTraceFileAppend, setTraceLevel, setUser, tokenizeAttributes`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Methods inherited from interface javax.sql.CommonDataSource

`getLoginTimeout, getLogWriter, getParentLogger, setLoginTimeout, setLogWriter`

### Field Detail

#### className__

    public static final String className__

See Also:
  Constant Field Values

### Constructor Detail

#### ClientConnectionPoolDataSource

    public ClientConnectionPoolDataSource()

### Method Detail

#### getPooledConnection

    public PooledConnection getPooledConnection()
                                         throws SQLException

Specified by:
  `getPooledConnection` in interface `ConnectionPoolDataSource`
Throws:
  `SQLException`

#### getPooledConnection

    public PooledConnection getPooledConnection(String user,
                                       String password)
                                         throws SQLException

Specified by:
  `getPooledConnection` in interface `ConnectionPoolDataSource`
Throws:
  `SQLException`

#### setMaxStatements

    public void setMaxStatements(int maxStatements)

Specifies the maximum size of the statement cache.

Parameters:
  `maxStatements` - maximum number of cached statements
Throws:
  `IllegalArgumentException` - if `maxStatements` is negative

#### getMaxStatements

    public int getMaxStatements()

Returns the maximum number of JDBC prepared statements a connection is allowed to cache.

Returns:
  Maximum number of statements to cache, or `0` if caching is disabled (default).

#### maxStatementsToPool

    public int maxStatementsToPool()

Internally used method.

Overrides:
  `maxStatementsToPool` in class `ClientBaseDataSource`
Returns:
  Maximum number of statements to cache, or `0` if caching is disabled (default).
See Also:
  `ClientBaseDataSource.maxStatementsToPool()`