Data Source Toolkit Guide > How to Prepare a Data Source Extension Adapter > How to Write an Extension Adapter > TDV Extension API
 
TDV Extension API
The TDV Extension API can be found at:
<TDV_install_dir>/apps/extension/docs/com/compositesw/extension/ds
 
The four packages in this API are:
Main Data Source Package
Configuration Package
Implementation Package
Introspection Package
To view Javadoc descriptions of TDV Extension API components, start with the index file:
<TDV_install_dir>/apps/extension/docs/index.html
Main Data Source Package
The main data source package is com.compositesw.extension.ds. It contains:
DataSourceContext—A utility class to interact with TDV.
DataSourceFactory—A factory for specifying customized implementation classes.
Logger—An interface for adapter providers to produce debug, error, info, and warning log messages.
Poolable—An interface to activate and deactivate poolable objects; add, remove, and retrieve a list of registered pool listeners; and set the data source context object.
PoolListener—A listener that gets callbacks when an object is in and out of the pool.
RelationalConnectionFactory—A factory for connections to the physical data source.
RelationalConnectionListener—A connection listener interface to get callbacks upon creation or destruction of a connection.
RelationalDataSourceFactory—A factory for specifying customized implementation classes for relational adapters.
RelationalShunt—A shunt interface to customize the way values are retrieved from the result set.
RelationalShuntFactory—An interface to create custom relational shunts.
StatementListener—Reserved for future use.
Configuration Package
The configuration package is com.compositesw.extension.ds.conf. It contains:
AdapterConfig—Interface for a data source adapter configuration; can be used to return the current value of adapter properties.
DataSourceConfig—Interface for a data source configuration; can be used to return the current value of data source properties (encrypted or plain).
Implementation Package
The implementation package is com.compositesw.extension.ds.impl. It contains:
AbstractRelationalMetaData—Contains an abstract relational metadata implementation class, a base implementation that inherits dozens of fields from the java.sql.DatabaseMetaData interface.
Introspection Package
The introspection package is com.compositesw.extension.ds.introspect. It contains:
IntrospectionFilter—An interface that can filter out unneeded metadata items.
RelationalMetaData—An interface for customizing metadata introspection. This interface is extended from DatabaseMetaData. DatabaseMetaData contains comprehensive information about the database as a whole.
ResultSetToMetadataConverter—An interface to extract metadata information from the result set of a custom SQL query.