The Connectivity subproject of DTP provides a connection framework that adopters can use and adapt for their own uses. Through Connectivity, you can:
- Create and maintain driver details for reuse among multiple connection profiles
- Create and maintain connection profiles for a variety of data sources
- Create a shared connection to a data source via a connection profile to get at the contents of the data source (whatever the adopter chooses to implement), possibly manipulate the contents of the data source, and disconnect (releasing the shared connection)
- Use the Open Data Access framework to access data from heterogeneous types of data sources, including custom data repository
Connectivity also provides a UI framework for manipulating profiles:
- The Data Source Explorer provides an Eclipse view through which a user can visually manipulate connection profiles
- A wizard framework allows adopters to extend and adapt classes for a more consistent user experience
- Takes advantage of the Common Navigator Framework in the Eclipse Platform for providing an extensible way to add content and actions
Connection Management Framework
The Connection Management Framework (CMF) is the foundation upon which specific connection types are created. The connection types, called Connection Profiles (CP), are contributed to the CMF through extension points. Users then connect to data source instances by creating and configuring a CP for that data source type. Data source-standard configuration parameters, such as the connection URL, user name, and password, are provided on CP instance creation and stored as secure meta-data for the CP. CP allow for host connectivity checks (“ping”), connection, auto-connect on CP startup, and disconnect. Further, CP Extensions enable additional functionality and content to be added to a CP. For reuse of CP instance configuration, base import/export functionality is provided by CPF and surfaced in tools such as the DSE Explorer (see below). Data source CP then become the connection providers through which other DTP tooling accesses data source instances.
Data Source Explorer
The Data Source Explorer (DSE) is an Eclipse view housing CP instances. From this view, CP capabilities are surfaced, and data source content is presented. The type and level of detail for any one instance is constrained only by the CP itself. DSE also is a provider of CP instance data to clients, such as drag and drop and API calls. This allows data tooling requiring connection management to interact with the DSE as a mediator to CP instances.
Driver Management Framework
Access to the appropriate drivers is a prerequisite for programmatic interaction with data sources. The Driver Management Framework (DMF) supplies an Eclipse preference page enabling users to create driver definitions based on supplied templates. A number of templates are provided in the base installation, and additional templates can be added by component developers contributing to DMF extension points.
JDBC connection support
DTP will include a JDBC driver template and CP, as a means of enabling database connectivity, and serving as an example for further CP development. Database-specific capabilities can then be surfaced as CP extensions, allowing for specialization and presentation of differentiating database functionality directly in that database's CP.
Open Data Access (ODA) Framework
The Open Data Access (ODA) component is an open and flexible data access framework that allows applications to access data from both standard and custom data sources. It enables data connectivity between data consumers and data source providers through published run-time and design-time interfaces. In addition, the framework includes an ODA driver management package that helps an ODA consumer application to manage diverse behavior of individual ODA data drivers.
ODA is one of the key components integrated by the Eclipse BIRT project for heterogeneous data retrieval. Data providers can plug in an ODA-compliant data source driver to access any data repository. Both DTP and BIRT deliver out-of-the-box ODA drivers to access common data sources, such as XML, Web services, CSV files, and JDBC.
A custom data source driver is created simply by implementing the ODA data access interfaces. Use the ODA Project Creation Wizards to help kick-start the development of your custom ODA driver. Its implementation would wrap data source-specific APIs (such as web services, etc.) to retrieve data rows. Once developed, the driver can be registered through an extension point with individual ODA consumer components to enable data connectivity.
The ODA runtime interfaces include support for establishing a connection, accessing meta-data, and executing queries to retrieve data. They are JDBC-like, but have been extended to support additional capabilities of non-RDBMS data sources. For example, the use of data source-specific query text (i.e. not SQL specific), complex parameters, etc. In addition, the ODA design-time interfaces and extension points allow you to provide a designer GUI tool specific to your custom data source.
ODA API Use Cases
Help improve the DTP user experience by telling us what you like and don't like about using the DTP connectivity layer on the connectivity usability discussion page.
We have started to do some planning and design to address many of the items brought up during the usability discussion. The first document generated during this process is the High Level Plan, and that will be followed up with other documents as planning and design continue.
Connectivity Europa Features
Connectivity Callisto Features
- Brian Fitzpatrick, Project Lead (Sybase)
- Cong Chen (Sybase)
- Linda Chan (Actuate)
- Larry Dunnel (IBM)
- Lin Zhu (Actuate)
- Loic Julien (IBM)