Apache Tomcat 7.0.28

org.apache.tomcat.jdbc.pool
Class DataSource

java.lang.Object
  extended by org.apache.tomcat.jdbc.pool.DataSourceProxy
      extended by org.apache.tomcat.jdbc.pool.DataSource
All Implemented Interfaces:
Wrapper, MBeanRegistration, CommonDataSource, ConnectionPoolDataSource, DataSource, ConnectionPoolMBean, PoolConfiguration
Direct Known Subclasses:
XADataSource

public class DataSource
extends DataSourceProxy
implements DataSource, MBeanRegistration, ConnectionPoolMBean, ConnectionPoolDataSource

A DataSource that can be instantiated through IoC and implements the DataSource interface since the DataSourceProxy is used as a generic proxy. The DataSource simply wraps a ConnectionPool in order to provide a standard interface to the user.

Version:
1.0
Author:
Filip Hanik

Field Summary
protected  ObjectName oname
           
 
Fields inherited from class org.apache.tomcat.jdbc.pool.DataSourceProxy
pool, poolProperties
 
Fields inherited from interface org.apache.tomcat.jdbc.pool.PoolConfiguration
PKG_PREFIX
 
Constructor Summary
DataSource()
          Constructor for reflection only.
DataSource(PoolConfiguration poolProperties)
          Constructs a DataSource object wrapping a connection
 
Method Summary
 ObjectName createObjectName(ObjectName original)
          Creates the ObjectName for the ConnectionPoolMBean object to be registered
 void postDeregister()
          Unregisters the underlying connection pool mbean.
 void postRegister(Boolean registrationDone)
          no-op
 void preDeregister()
          no-op
 ObjectName preRegister(MBeanServer server, ObjectName name)
          If the connection pool MBean exists, it will be registered during this operation.
protected  void registerJmx()
          Registers the ConnectionPoolMBean under a unique name based on the ObjectName for the DataSource
protected  void unregisterJmx()
           
 
Methods inherited from class org.apache.tomcat.jdbc.pool.DataSourceProxy
checkAbandoned, checkIdle, close, close, createPool, getAbandonWhenPercentageFull, getActive, getCommitOnReturn, getConnection, getConnection, getConnectionAsync, getConnectionProperties, getDataSource, getDataSourceJNDI, getDbProperties, getDefaultAutoCommit, getDefaultCatalog, getDefaultReadOnly, getDefaultTransactionIsolation, getDriverClassName, getIdle, getInitialSize, getInitSQL, getJdbcInterceptors, getJdbcInterceptorsAsArray, getLoginTimeout, getLogValidationErrors, getLogWriter, getMaxActive, getMaxAge, getMaxIdle, getMaxWait, getMinEvictableIdleTimeMillis, getMinIdle, getName, getNumActive, getNumIdle, getNumTestsPerEvictionRun, getParentLogger, getPassword, getPool, getPooledConnection, getPooledConnection, getPoolName, getPoolProperties, getPoolSize, getPropagateInterruptState, getRemoveAbandonedTimeout, getRollbackOnReturn, getSize, getSuspectTimeout, getTimeBetweenEvictionRunsMillis, getUrl, getUseDisposableConnectionFacade, getUseLock, getUsername, getValidationInterval, getValidationQuery, getValidator, getValidatorClassName, getWaitCount, getXAConnection, getXAConnection, isAccessToUnderlyingConnectionAllowed, isAlternateUsernameAllowed, isDefaultAutoCommit, isDefaultReadOnly, isFairQueue, isJmxEnabled, isLogAbandoned, isPoolSweeperEnabled, isRemoveAbandoned, isTestOnBorrow, isTestOnConnect, isTestOnReturn, isTestWhileIdle, isUseEquals, isWrapperFor, purge, purgeOnReturn, setAbandonWhenPercentageFull, setAccessToUnderlyingConnectionAllowed, setAlternateUsernameAllowed, setCommitOnReturn, setConnectionProperties, setDataSource, setDataSourceJNDI, setDbProperties, setDefaultAutoCommit, setDefaultCatalog, setDefaultReadOnly, setDefaultTransactionIsolation, setDriverClassName, setFairQueue, setInitialSize, setInitSQL, setJdbcInterceptors, setJmxEnabled, setLogAbandoned, setLoginTimeout, setLogValidationErrors, setLogWriter, setMaxActive, setMaxAge, setMaxIdle, setMaxWait, setMinEvictableIdleTimeMillis, setMinIdle, setName, setNumTestsPerEvictionRun, setPassword, setPoolProperties, setPropagateInterruptState, setRemoveAbandoned, setRemoveAbandonedTimeout, setRollbackOnReturn, setSuspectTimeout, setTestOnBorrow, setTestOnConnect, setTestOnReturn, setTestWhileIdle, setTimeBetweenEvictionRunsMillis, setUrl, setUseDisposableConnectionFacade, setUseEquals, setUseLock, setUsername, setValidationInterval, setValidationQuery, setValidator, setValidatorClassName, testIdle, toString, unwrap
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface javax.sql.DataSource
getConnection, getConnection
 
Methods inherited from interface java.sql.Wrapper
isWrapperFor, unwrap
 
Methods inherited from interface org.apache.tomcat.jdbc.pool.jmx.ConnectionPoolMBean
checkAbandoned, checkIdle, getActive, getIdle, getNumActive, getNumIdle, getSize, getWaitCount, purge, purgeOnReturn, testIdle
 
Methods inherited from interface org.apache.tomcat.jdbc.pool.PoolConfiguration
getAbandonWhenPercentageFull, getCommitOnReturn, getConnectionProperties, getDataSource, getDataSourceJNDI, getDbProperties, getDefaultAutoCommit, getDefaultCatalog, getDefaultReadOnly, getDefaultTransactionIsolation, getDriverClassName, getInitialSize, getInitSQL, getJdbcInterceptors, getJdbcInterceptorsAsArray, getLogValidationErrors, getMaxActive, getMaxAge, getMaxIdle, getMaxWait, getMinEvictableIdleTimeMillis, getMinIdle, getName, getNumTestsPerEvictionRun, getPassword, getPoolName, getPropagateInterruptState, getRemoveAbandonedTimeout, getRollbackOnReturn, getSuspectTimeout, getTimeBetweenEvictionRunsMillis, getUrl, getUseDisposableConnectionFacade, getUseLock, getUsername, getValidationInterval, getValidationQuery, getValidator, getValidatorClassName, isAccessToUnderlyingConnectionAllowed, isAlternateUsernameAllowed, isDefaultAutoCommit, isDefaultReadOnly, isFairQueue, isJmxEnabled, isLogAbandoned, isPoolSweeperEnabled, isRemoveAbandoned, isTestOnBorrow, isTestOnConnect, isTestOnReturn, isTestWhileIdle, isUseEquals, setAbandonWhenPercentageFull, setAccessToUnderlyingConnectionAllowed, setAlternateUsernameAllowed, setCommitOnReturn, setConnectionProperties, setDataSource, setDataSourceJNDI, setDbProperties, setDefaultAutoCommit, setDefaultCatalog, setDefaultReadOnly, setDefaultTransactionIsolation, setDriverClassName, setFairQueue, setInitialSize, setInitSQL, setJdbcInterceptors, setJmxEnabled, setLogAbandoned, setLogValidationErrors, setMaxActive, setMaxAge, setMaxIdle, setMaxWait, setMinEvictableIdleTimeMillis, setMinIdle, setName, setNumTestsPerEvictionRun, setPassword, setPropagateInterruptState, setRemoveAbandoned, setRemoveAbandonedTimeout, setRollbackOnReturn, setSuspectTimeout, setTestOnBorrow, setTestOnConnect, setTestOnReturn, setTestWhileIdle, setTimeBetweenEvictionRunsMillis, setUrl, setUseDisposableConnectionFacade, setUseEquals, setUseLock, setUsername, setValidationInterval, setValidationQuery, setValidator, setValidatorClassName
 
Methods inherited from interface javax.sql.ConnectionPoolDataSource
getPooledConnection, getPooledConnection
 
Methods inherited from interface javax.sql.CommonDataSource
getLoginTimeout, getLogWriter, setLoginTimeout, setLogWriter
 

Field Detail

oname

protected volatile ObjectName oname
Constructor Detail

DataSource

public DataSource()
Constructor for reflection only. A default set of pool properties will be created.


DataSource

public DataSource(PoolConfiguration poolProperties)
Constructs a DataSource object wrapping a connection

Parameters:
poolProperties -
Method Detail

postDeregister

public void postDeregister()
Unregisters the underlying connection pool mbean.

Specified by:
postDeregister in interface MBeanRegistration

postRegister

public void postRegister(Boolean registrationDone)
no-op

Specified by:
postRegister in interface MBeanRegistration

preDeregister

public void preDeregister()
                   throws Exception
no-op

Specified by:
preDeregister in interface MBeanRegistration
Throws:
Exception

preRegister

public ObjectName preRegister(MBeanServer server,
                              ObjectName name)
                       throws Exception
If the connection pool MBean exists, it will be registered during this operation.

Specified by:
preRegister in interface MBeanRegistration
Throws:
Exception

createObjectName

public ObjectName createObjectName(ObjectName original)
                            throws MalformedObjectNameException
Creates the ObjectName for the ConnectionPoolMBean object to be registered

Parameters:
original - the ObjectName for the DataSource
Returns:
the ObjectName for the ConnectionPoolMBean
Throws:
MalformedObjectNameException

registerJmx

protected void registerJmx()
Registers the ConnectionPoolMBean under a unique name based on the ObjectName for the DataSource


unregisterJmx

protected void unregisterJmx()

Apache Tomcat 7.0.28

Copyright © 2000-2012 Apache Software Foundation. All Rights Reserved.