# Hierarchy For All Packages

Package Hierarchies:

- org.apache.commons.dbcp2,
- org.apache.commons.dbcp2.cpdsadapter,
- org.apache.commons.dbcp2.datasources,
- org.apache.commons.dbcp2.managed

## Class Hierarchy

- java.lang.Object
  - org.apache.commons.dbcp2.AbandonedTrace (implements java.lang.AutoCloseable, org.apache.commons.pool2.TrackedUse)
    - org.apache.commons.dbcp2.DelegatingConnection<C> (implements java.sql.Connection)
      - org.apache.commons.dbcp2.managed.ManagedConnection<C>
      - org.apache.commons.dbcp2.PoolableConnection (implements org.apache.commons.dbcp2.PoolableConnectionMXBean)
        - org.apache.commons.dbcp2.managed.PoolableManagedConnection
      - org.apache.commons.dbcp2.PoolingConnection (implements org.apache.commons.pool2.KeyedPooledObjectFactory<K,V>)
    - org.apache.commons.dbcp2.DelegatingResultSet (implements java.sql.ResultSet)
    - org.apache.commons.dbcp2.DelegatingStatement (implements java.sql.Statement)
      - org.apache.commons.dbcp2.DelegatingPreparedStatement (implements java.sql.PreparedStatement)
        - org.apache.commons.dbcp2.DelegatingCallableStatement (implements java.sql.CallableStatement)
          - org.apache.commons.dbcp2.PoolableCallableStatement
        - org.apache.commons.dbcp2.PoolablePreparedStatement<K>
  - org.apache.commons.dbcp2.BasicDataSource (implements java.lang.AutoCloseable, org.apache.commons.dbcp2.BasicDataSourceMXBean, javax.sql.DataSource, javax.management.MBeanRegistration)
    - org.apache.commons.dbcp2.managed.BasicManagedDataSource
  - org.apache.commons.dbcp2.BasicDataSourceFactory (implements javax.naming.spi.ObjectFactory)
  - org.apache.commons.dbcp2.Constants
  - org.apache.commons.dbcp2.DataSourceConnectionFactory (implements org.apache.commons.dbcp2.ConnectionFactory)
  - org.apache.commons.dbcp2.managed.DataSourceXAConnectionFactory (implements org.apache.commons.dbcp2.managed.XAConnectionFactory)
  - org.apache.commons.dbcp2.DelegatingDatabaseMetaData (implements java.sql.DatabaseMetaData)
  - org.apache.commons.dbcp2.cpdsadapter.DriverAdapterCPDS (implements javax.sql.ConnectionPoolDataSource, javax.naming.spi.ObjectFactory, javax.naming.Referenceable, java.io.Serializable)
  - org.apache.commons.dbcp2.DriverConnectionFactory (implements org.apache.commons.dbcp2.ConnectionFactory)
  - org.apache.commons.dbcp2.DriverManagerConnectionFactory (implements org.apache.commons.dbcp2.ConnectionFactory)
  - org.apache.commons.dbcp2.datasources.InstanceKeyDataSource (implements java.lang.AutoCloseable, javax.sql.DataSource, javax.naming.Referenceable, java.io.Serializable)
    - org.apache.commons.dbcp2.datasources.PerUserPoolDataSource
    - org.apache.commons.dbcp2.datasources.SharedPoolDataSource
  - org.apache.commons.dbcp2.Jdbc41Bridge
  - org.apache.commons.dbcp2.managed.LocalXAConnectionFactory (implements org.apache.commons.dbcp2.managed.XAConnectionFactory)
  - org.apache.commons.dbcp2.managed.LocalXAConnectionFactory.LocalXAResource (implements javax.transaction.xa.XAResource)
  - org.apache.commons.dbcp2.managed.ManagedConnection.CompletionListener (implements org.apache.commons.dbcp2.managed.TransactionContextListener)
  - org.apache.commons.dbcp2.datasources.PerUserPoolDataSourceFactory
  - org.apache.commons.dbcp2.PoolableConnectionFactory (implements org.apache.commons.pool2.PooledObjectFactory<T>)
    - org.apache.commons.dbcp2.managed.PoolableManagedConnectionFactory
  - org.apache.commons.dbcp2.PoolingDataSource<C> (implements java.lang.AutoCloseable, javax.sql.DataSource)
    - org.apache.commons.dbcp2.managed.ManagedDataSource<C>
  - org.apache.commons.dbcp2.PoolingDriver (implements java.sql.Driver)
  - org.apache.commons.dbcp2.PStmtKey
    - org.apache.commons.dbcp2.cpdsadapter.PStmtKeyCPDS
  - org.apache.commons.dbcp2.datasources.SharedPoolDataSourceFactory
  - org.apache.commons.dbcp2.SwallowedExceptionLogger (implements org.apache.commons.pool2.SwallowedExceptionListener)
  - java.lang.Throwable (implements java.io.Serializable)
    - java.lang.Exception
      - org.apache.commons.dbcp2.ListException
      - java.sql.SQLException (implements java.lang.Iterable<T>)
        - org.apache.commons.dbcp2.SQLExceptionList
  - org.apache.commons.dbcp2.managed.TransactionContext
  - org.apache.commons.dbcp2.managed.TransactionRegistry
  - org.apache.commons.dbcp2.Utils

## Interface Hierarchy

- org.apache.commons.dbcp2.ConnectionFactory
  - org.apache.commons.dbcp2.managed.XAConnectionFactory
- org.apache.commons.dbcp2.DataSourceMXBean
  - org.apache.commons.dbcp2.BasicDataSourceMXBean
- org.apache.commons.dbcp2.PoolableConnectionMXBean
- org.apache.commons.dbcp2.managed.TransactionContextListener

## Enum Hierarchy

- java.lang.Object
  - java.lang.Enum<E> (implements java.lang.Comparable<T>, java.io.Serializable)
    - org.apache.commons.dbcp2.PoolingConnection.StatementType