Oracle10g JDBC

oracle.jdbc.pool
Class OracleOCIConnectionPool

java.lang.Object
  extended byoracle.jdbc.pool.OracleDataSource
      extended byoracle.jdbc.pool.OracleOCIConnectionPool
All Implemented Interfaces:
javax.sql.DataSource, javax.naming.Referenceable, java.io.Serializable

public class OracleOCIConnectionPool
extends OracleDataSource

See Also:
Serialized Form

Field Summary
static java.lang.String BUILD_DATE
           
static java.lang.String CONNECTION_ID
           
static java.lang.String CONNECTION_POOL
           
static java.lang.String CONNPOOL_ACTIVE_SIZE
           
static java.lang.String CONNPOOL_ALIASED_CONNECTION
           
static java.lang.String CONNPOOL_CONNECTION
           
static java.lang.String CONNPOOL_INCREMENT
           
static java.lang.String CONNPOOL_IS_POOLCREATED
           
static java.lang.String CONNPOOL_LOGON_MODE
           
static java.lang.String CONNPOOL_MAX_LIMIT
           
static java.lang.String CONNPOOL_MIN_LIMIT
           
static java.lang.String CONNPOOL_NOWAIT
           
static java.lang.String CONNPOOL_OBJECT
           
static java.lang.String CONNPOOL_POOL_SIZE
           
static java.lang.String CONNPOOL_PROXY_CONNECTION
           
static java.lang.String CONNPOOL_TIMEOUT
           
static java.lang.String IS_CONNECTION_POOLING
           
 oracle.jdbc.oci.OracleOCIConnection m_connection_pool
           
static boolean PRIVATE_TRACE
           
static java.lang.String PROXY_CERTIFICATE
           
static java.lang.String PROXY_DISTINGUISHED_NAME
           
static java.lang.String PROXY_NUM_ROLES
           
static java.lang.String PROXY_PASSWORD
           
static java.lang.String PROXY_ROLES
           
static java.lang.String PROXY_USER_NAME
           
static java.lang.String PROXYTYPE
           
static java.lang.String PROXYTYPE_CERTIFICATE
           
static java.lang.String PROXYTYPE_DISTINGUISHED_NAME
           
static java.lang.String PROXYTYPE_USER_NAME
           
static boolean TRACE
           
static java.lang.String TRANSACTIONS_DISTRIBUTED
           
 
Fields inherited from class oracle.jdbc.pool.OracleDataSource
isOracleDataSource
 
Constructor Summary
OracleOCIConnectionPool()
          This will use the user-id, password and connection pool name values set using the methods setUser, setPassword, setConnectionPoolName.
OracleOCIConnectionPool(java.lang.String us, java.lang.String p, java.lang.String url)
           
OracleOCIConnectionPool(java.lang.String us, java.lang.String p, java.lang.String url, java.util.Properties info)
           
 
Method Summary
 void close()
          Close DataSource API.
 void connectionClosed(oracle.jdbc.oci.OracleOCIConnection conn)
           
 int getActiveSize()
          Return the number of active or busy connections in the connection pool Note that the count cannot be guaranteed on any invoking subsequent OracleOCIConnectionCacheImpl method.
 oracle.jdbc.internal.OracleConnection getAliasedConnection(byte[] conId)
           
 java.sql.Connection getConnection()
          Attempt to establish a database connection.
 java.sql.Connection getConnection(java.lang.String us, java.lang.String p)
          Attempt to establish a database connection.
 int getConnectionIncrement()
          Return the Increment for increasing the connections for the Cache.
 int getMaxLimit()
          Return the Max limit on Connections.
 int getMinLimit()
          Note: There are no individual setMin, setMax and setIncrement since that needs to be done in one call to setPoolConfig Return the minimum limit on the no of Connections.
 java.lang.String getNoWait()
          Return the connection No-wait parameter This attribute determines if retrial for a connection has to be done when all connections in the pool are found to be busy and the number of connections already reached max.
 java.util.Properties getPoolConfig()
           
 int getPoolSize()
          Return the number of physical connections in the connection pool Note that the count cannot be guaranteed on any invoking subsequent OracleOCIConnectionCacheImpl method.
 oracle.jdbc.internal.OracleConnection getProxyConnection(java.lang.String proxytype, java.util.Properties prop)
           
 javax.naming.Reference getReference()
           
 int getStmtCacheSize()
          Return the size of Statement Cache.
 int getTimeout()
          Return the timeout The connections idle for more than this time (seconds) are terminated periodically, to maintain optimum number of open connections.This attribute can be set dynamically.
 boolean isDistributedTransEnabled()
           
 boolean isPoolCreated()
           
 boolean isStmtCacheEnabled()
          Check whether Statement Caching is enabled for this pool or Not.
static void readPoolConfig(java.util.Properties info, int[] p)
           
 void setPoolConfig(java.util.Properties prop)
           
 void setStmtCacheSize(int size)
          Set the statement cache size.
 void setStmtCacheSize(int size, boolean clearMetaData)
          Set the statement cache size.
 
Methods inherited from class oracle.jdbc.pool.OracleDataSource
getConnection, getConnection, getConnectionCacheName, getConnectionCacheProperties, getConnectionCachingEnabled, getConnectionProperties, getDatabaseName, getDataSourceName, getDescription, getDriverType, getExplicitCachingEnabled, getFastConnectionFailoverEnabled, getImplicitCachingEnabled, getLoginTimeout, getLogWriter, getMaxStatements, getNetworkProtocol, getPortNumber, getServerName, getServiceName, getTNSEntryName, getURL, getUser, setConnectionCacheName, setConnectionCacheProperties, setConnectionCachingEnabled, setConnectionProperties, setDatabaseName, setDataSourceName, setDescription, setDriverType, setExplicitCachingEnabled, setFastConnectionFailoverEnabled, setImplicitCachingEnabled, setLoginTimeout, setLogWriter, setMaxStatements, setNetworkProtocol, setPassword, setPortNumber, setServerName, setServiceName, setTNSEntryName, setURL, setUser
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

m_connection_pool

public oracle.jdbc.oci.OracleOCIConnection m_connection_pool

IS_CONNECTION_POOLING

public static final java.lang.String IS_CONNECTION_POOLING
See Also:
Constant Field Values

CONNPOOL_OBJECT

public static final java.lang.String CONNPOOL_OBJECT
See Also:
Constant Field Values

CONNPOOL_LOGON_MODE

public static final java.lang.String CONNPOOL_LOGON_MODE
See Also:
Constant Field Values

CONNECTION_POOL

public static final java.lang.String CONNECTION_POOL
See Also:
Constant Field Values

CONNPOOL_CONNECTION

public static final java.lang.String CONNPOOL_CONNECTION
See Also:
Constant Field Values

CONNPOOL_PROXY_CONNECTION

public static final java.lang.String CONNPOOL_PROXY_CONNECTION
See Also:
Constant Field Values

CONNPOOL_ALIASED_CONNECTION

public static final java.lang.String CONNPOOL_ALIASED_CONNECTION
See Also:
Constant Field Values

PROXY_USER_NAME

public static final java.lang.String PROXY_USER_NAME
See Also:
Constant Field Values

PROXY_DISTINGUISHED_NAME

public static final java.lang.String PROXY_DISTINGUISHED_NAME
See Also:
Constant Field Values

PROXY_CERTIFICATE

public static final java.lang.String PROXY_CERTIFICATE
See Also:
Constant Field Values

PROXY_ROLES

public static final java.lang.String PROXY_ROLES
See Also:
Constant Field Values

PROXY_NUM_ROLES

public static final java.lang.String PROXY_NUM_ROLES
See Also:
Constant Field Values

PROXY_PASSWORD

public static final java.lang.String PROXY_PASSWORD
See Also:
Constant Field Values

PROXYTYPE

public static final java.lang.String PROXYTYPE
See Also:
Constant Field Values

PROXYTYPE_USER_NAME

public static final java.lang.String PROXYTYPE_USER_NAME
See Also:
Constant Field Values

PROXYTYPE_DISTINGUISHED_NAME

public static final java.lang.String PROXYTYPE_DISTINGUISHED_NAME
See Also:
Constant Field Values

PROXYTYPE_CERTIFICATE

public static final java.lang.String PROXYTYPE_CERTIFICATE
See Also:
Constant Field Values

CONNECTION_ID

public static final java.lang.String CONNECTION_ID
See Also:
Constant Field Values

CONNPOOL_MIN_LIMIT

public static java.lang.String CONNPOOL_MIN_LIMIT

CONNPOOL_MAX_LIMIT

public static java.lang.String CONNPOOL_MAX_LIMIT

CONNPOOL_INCREMENT

public static java.lang.String CONNPOOL_INCREMENT

CONNPOOL_ACTIVE_SIZE

public static java.lang.String CONNPOOL_ACTIVE_SIZE

CONNPOOL_POOL_SIZE

public static java.lang.String CONNPOOL_POOL_SIZE

CONNPOOL_TIMEOUT

public static java.lang.String CONNPOOL_TIMEOUT

CONNPOOL_NOWAIT

public static java.lang.String CONNPOOL_NOWAIT

CONNPOOL_IS_POOLCREATED

public static java.lang.String CONNPOOL_IS_POOLCREATED

TRANSACTIONS_DISTRIBUTED

public static final java.lang.String TRANSACTIONS_DISTRIBUTED
See Also:
Constant Field Values

TRACE

public static final boolean TRACE
See Also:
Constant Field Values

PRIVATE_TRACE

public static final boolean PRIVATE_TRACE
See Also:
Constant Field Values

BUILD_DATE

public static final java.lang.String BUILD_DATE
See Also:
Constant Field Values
Constructor Detail

OracleOCIConnectionPool

public OracleOCIConnectionPool(java.lang.String us,
                               java.lang.String p,
                               java.lang.String url,
                               java.util.Properties info)
                        throws java.sql.SQLException
Parameters:
us - ConnectionPool user-id.
p - ConnectionPool password
url - This would be the full url including the database name. The database name would be the logical name of the pool.
info - Set of properties (optional) for specifying the pool configuration.

OracleOCIConnectionPool

public OracleOCIConnectionPool(java.lang.String us,
                               java.lang.String p,
                               java.lang.String url)
                        throws java.sql.SQLException

OracleOCIConnectionPool

public OracleOCIConnectionPool()
                        throws java.sql.SQLException
This will use the user-id, password and connection pool name values set using the methods setUser, setPassword, setConnectionPoolName.

Method Detail

getConnection

public java.sql.Connection getConnection()
                                  throws java.sql.SQLException
Description copied from class: OracleDataSource

Attempt to establish a database connection.

Specified by:
getConnection in interface javax.sql.DataSource
Overrides:
getConnection in class OracleDataSource
Returns:
a Connection to the database
Throws:
java.sql.SQLException - if a database-access error occurs.

getConnection

public java.sql.Connection getConnection(java.lang.String us,
                                         java.lang.String p)
                                  throws java.sql.SQLException
Description copied from class: OracleDataSource

Attempt to establish a database connection.

Specified by:
getConnection in interface javax.sql.DataSource
Overrides:
getConnection in class OracleDataSource
Parameters:
us - the database user on whose behalf the Connection is being made
Returns:
a Connection to the database
Throws:
java.sql.SQLException - if a database-access error occurs.

getReference

public javax.naming.Reference getReference()
                                    throws javax.naming.NamingException
Specified by:
getReference in interface javax.naming.Referenceable
Overrides:
getReference in class OracleDataSource
Throws:
javax.naming.NamingException

getProxyConnection

public oracle.jdbc.internal.OracleConnection getProxyConnection(java.lang.String proxytype,
                                                                java.util.Properties prop)
                                                         throws java.sql.SQLException
Throws:
java.sql.SQLException

getAliasedConnection

public oracle.jdbc.internal.OracleConnection getAliasedConnection(byte[] conId)
                                                           throws java.sql.SQLException
Throws:
java.sql.SQLException

close

public void close()
           throws java.sql.SQLException
Description copied from class: OracleDataSource

Close DataSource API. This removes the associated Connection Cache and frees resources. This must be the last method to invoke, after the user is finished using a cache enabled DataSource.

Overrides:
close in class OracleDataSource
Throws:
java.sql.SQLException

setPoolConfig

public void setPoolConfig(java.util.Properties prop)
                   throws java.sql.SQLException
Throws:
java.sql.SQLException

readPoolConfig

public static void readPoolConfig(java.util.Properties info,
                                  int[] p)

getPoolConfig

public java.util.Properties getPoolConfig()
                                   throws java.sql.SQLException
Throws:
java.sql.SQLException

getActiveSize

public int getActiveSize()
                  throws java.sql.SQLException
Return the number of active or busy connections in the connection pool Note that the count cannot be guaranteed on any invoking subsequent OracleOCIConnectionCacheImpl method. This should be used only as estimate and perhaps for statistical analysis.

Returns:
Throws:
java.sql.SQLException

getPoolSize

public int getPoolSize()
                throws java.sql.SQLException
Return the number of physical connections in the connection pool Note that the count cannot be guaranteed on any invoking subsequent OracleOCIConnectionCacheImpl method. This should be used only as estimate and perhaps for statistical analysis.

Returns:
Throws:
java.sql.SQLException

getTimeout

public int getTimeout()
               throws java.sql.SQLException
Return the timeout The connections idle for more than this time (seconds) are terminated periodically, to maintain optimum number of open connections.This attribute can be set dynamically. If this attribute is not set, the connections are never timed out.

Returns:
Throws:
java.sql.SQLException

getNoWait

public java.lang.String getNoWait()
                           throws java.sql.SQLException
Return the connection No-wait parameter This attribute determines if retrial for a connection has to be done when all connections in the pool are found to be busy and the number of connections already reached max. If this attribute is set, an error is thrown when all the connections are busy and no more connections can be opened. Otherwise the call waits till it gets a connection.

Returns:
Throws:
java.sql.SQLException

getMinLimit

public int getMinLimit()
                throws java.sql.SQLException
Note: There are no individual setMin, setMax and setIncrement since that needs to be done in one call to setPoolConfig Return the minimum limit on the no of Connections.

Returns:
minimum limit on the no of Connections.
Throws:
java.sql.SQLException

getMaxLimit

public int getMaxLimit()
                throws java.sql.SQLException
Return the Max limit on Connections.

Returns:
int Max no of Connections that can be opened.
Throws:
java.sql.SQLException

getConnectionIncrement

public int getConnectionIncrement()
                           throws java.sql.SQLException
Return the Increment for increasing the connections for the Cache.

Returns:
int Increment
Throws:
java.sql.SQLException

isDistributedTransEnabled

public boolean isDistributedTransEnabled()

isPoolCreated

public boolean isPoolCreated()

connectionClosed

public void connectionClosed(oracle.jdbc.oci.OracleOCIConnection conn)
                      throws java.sql.SQLException
Throws:
java.sql.SQLException

setStmtCacheSize

public void setStmtCacheSize(int size)
                      throws java.sql.SQLException
Set the statement cache size. Default is 0. You cannot set this for logicalhandles obtained from this pool. If more than size cursors are already cached than they will be closed. By default the meta data of the cursor will be saved. Only data and the state will be cleared. You need to call this first to enable either type of Statement caching. When both types of Statement caching are enabled, the size is the total number of cursors cached for both the schemes together.

Parameters:
size - Size of the Cache
Throws:
java.sql.SQLException

setStmtCacheSize

public void setStmtCacheSize(int size,
                             boolean clearMetaData)
                      throws java.sql.SQLException
Set the statement cache size. Default is 0. You cannot set this for logicalhandles obtained from this pool. If more than size cursors are already cached than they will be closed. By default, the meta data of the cursor will be saved. But if clearMetaData is set to true, even that will be cleared. You need to call this first to enable either type of Statement caching. When both types of Statement caching are enabled, the size is the total number of cursors cached for both the schemes together.

Parameters:
size - Size of the Cache
clearMetaData - Whether the state has to be cleared or not
Throws:
java.sql.SQLException

getStmtCacheSize

public int getStmtCacheSize()
Return the size of Statement Cache.

Returns:
int Size of Statement Cache. If not set, the default 0 is returned.

isStmtCacheEnabled

public boolean isStmtCacheEnabled()
Check whether Statement Caching is enabled for this pool or Not.


Oracle10g JDBC

Copyright © 1998,2004, Oracle. All rights reserved