org.apache.xalan.lib.sql
Class DefaultConnectionPool

java.lang.Object
  extended by org.apache.xalan.lib.sql.DefaultConnectionPool
All Implemented Interfaces:
ConnectionPool

public class DefaultConnectionPool
extends java.lang.Object
implements ConnectionPool

For internal connectiones, i.e. Connection information supplies in the Stylesheet. The Default Connection Pool will be used.


Constructor Summary
DefaultConnectionPool()
           
 
Method Summary
 void freeUnused()
          Go through the connection pool and release any connections that are not InUse;
 java.sql.Connection getConnection()
          Retrive a database connection from the pool
 boolean hasActiveConnections()
          Is our ConnectionPool have any connections that are still in Use ??
 void initializePool()
           
 boolean isEnabled()
          Return our current Active state
 void releaseConnection(java.sql.Connection con)
          Return a connection to the pool, the connection may be closed if the pool is inactive or has exceeded the max number of free connections
 void releaseConnectionOnError(java.sql.Connection con)
          Provide a mechinism to return a connection to the pool on Error.
 void setDriver(java.lang.String d)
          Set the driver call to be used to create connections
 void setMinConnections(int n)
          Override the current number of connections to keep in the pool.
 void setPassword(java.lang.String p)
          Set the password in the property set.
 void setPoolEnabled(boolean flag)
          The Pool can be Enabled and Disabled.
 void setProtocol(java.util.Properties p)
          The Protocol string is used to pass in other connection properties.
 void setURL(java.lang.String url)
          Set the url used to connect to the database
 void setUser(java.lang.String u)
          Set the user name in the property set
 boolean testConnection()
          Try to aquire a new connection, if it succeeds then return true, else return false.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DefaultConnectionPool

public DefaultConnectionPool()
Method Detail

isEnabled

public boolean isEnabled()
Return our current Active state

Specified by:
isEnabled in interface ConnectionPool

setDriver

public void setDriver(java.lang.String d)
Set the driver call to be used to create connections

Specified by:
setDriver in interface ConnectionPool
Parameters:
d -

setURL

public void setURL(java.lang.String url)
Set the url used to connect to the database

Specified by:
setURL in interface ConnectionPool
Parameters:
url -

freeUnused

public void freeUnused()
Go through the connection pool and release any connections that are not InUse;

Specified by:
freeUnused in interface ConnectionPool

hasActiveConnections

public boolean hasActiveConnections()
Is our ConnectionPool have any connections that are still in Use ??

Specified by:
hasActiveConnections in interface ConnectionPool

setPassword

public void setPassword(java.lang.String p)
Set the password in the property set.

Specified by:
setPassword in interface ConnectionPool
Parameters:
p -

setUser

public void setUser(java.lang.String u)
Set the user name in the property set

Specified by:
setUser in interface ConnectionPool
Parameters:
u -

setProtocol

public void setProtocol(java.util.Properties p)
The Protocol string is used to pass in other connection properties. A properties file is a general purpose container

Specified by:
setProtocol in interface ConnectionPool
Parameters:
p -

setMinConnections

public void setMinConnections(int n)
Override the current number of connections to keep in the pool. This setting will only have effect on a new pool or when a new connection is requested and there is less connections that this setting.

Specified by:
setMinConnections in interface ConnectionPool
Parameters:
n -

testConnection

public boolean testConnection()
Try to aquire a new connection, if it succeeds then return true, else return false. Note: This method will cause the connection pool to be built.

Specified by:
testConnection in interface ConnectionPool

getConnection

public java.sql.Connection getConnection()
                                  throws java.lang.IllegalArgumentException,
                                         java.sql.SQLException
Description copied from interface: ConnectionPool
Retrive a database connection from the pool

Specified by:
getConnection in interface ConnectionPool
Returns:
Connection
Throws:
java.sql.SQLException
java.lang.IllegalArgumentException

releaseConnection

public void releaseConnection(java.sql.Connection con)
                       throws java.sql.SQLException
Description copied from interface: ConnectionPool
Return a connection to the pool, the connection may be closed if the pool is inactive or has exceeded the max number of free connections

Specified by:
releaseConnection in interface ConnectionPool
Parameters:
con -
Throws:
java.sql.SQLException

releaseConnectionOnError

public void releaseConnectionOnError(java.sql.Connection con)
                              throws java.sql.SQLException
Description copied from interface: ConnectionPool
Provide a mechinism to return a connection to the pool on Error. A good default behaviour is to close this connection and build a new one to replace it. Some JDBC impl's won't allow you to reuse a connection after an error occurs.

Specified by:
releaseConnectionOnError in interface ConnectionPool
Parameters:
con -
Throws:
java.sql.SQLException

initializePool

public void initializePool()
                    throws java.lang.IllegalArgumentException,
                           java.sql.SQLException
Throws:
java.lang.IllegalArgumentException
java.sql.SQLException

setPoolEnabled

public void setPoolEnabled(boolean flag)
The Pool can be Enabled and Disabled. Disabling the pool closes all the outstanding Unused connections and any new connections will be closed upon release.

Specified by:
setPoolEnabled in interface ConnectionPool
Parameters:
flag - Control the Connection Pool. If it is enabled then Connections will actuall be held around. If disabled then all unused connections will be instantly closed and as connections are released they are closed and removed from the pool.


Copyright © 2005 Apache XML Project. All Rights Reserved.