# Hierarchy For Package org.apache.cayenne.datasource

Package Hierarchies:

- All Packages

## Class Hierarchy

- java.lang.Object
  - org.apache.cayenne.datasource.DataSourceBuilder
  - org.apache.cayenne.datasource.DriverDataSource (implements javax.sql.DataSource)
  - org.apache.cayenne.datasource.ManagedPoolingDataSource (implements org.apache.cayenne.datasource.PoolingDataSource, org.apache.cayenne.di.ScopeEventListener)
  - org.apache.cayenne.datasource.PoolAwareConnection (implements java.sql.Connection)
  - org.apache.cayenne.datasource.PoolingDataSourceBuilder
  - org.apache.cayenne.datasource.PoolingDataSourceParameters
  - java.lang.Throwable (implements java.io.Serializable)
    - java.lang.Exception
      - java.sql.SQLException (implements java.lang.Iterable<T>)
        - org.apache.cayenne.datasource.BadValidationQueryException
        - org.apache.cayenne.datasource.UnmanagedPoolingDataSource.ConnectionUnavailableException
  - org.apache.cayenne.datasource.UnmanagedPoolingDataSource (implements org.apache.cayenne.datasource.PoolingDataSource)

## Interface Hierarchy

- java.lang.AutoCloseable
  - org.apache.cayenne.datasource.PoolingDataSource (also extends javax.sql.DataSource)
- javax.sql.CommonDataSource
  - javax.sql.DataSource (also extends java.sql.Wrapper)
    - org.apache.cayenne.datasource.PoolingDataSource (also extends java.lang.AutoCloseable)
- java.sql.Wrapper
  - javax.sql.DataSource (also extends javax.sql.CommonDataSource)
    - org.apache.cayenne.datasource.PoolingDataSource (also extends java.lang.AutoCloseable)