DTP Connectivity Ganymede Project Plan: First Draft
DTP Connectivity Ganymede
Things to Consider...
- Ability to pre-populate a connection UI with driver definitions. (This already exists with the ability to auto-create a default instance of a particular driver template at startup.)
- Provide common user interface for selecting existing connection profiles. Features of this UI should include filtering of the existing connections based on an arbitrary set of attributes and it should display an extensible set of properties for the selected connection. (This already partly exists with the ability to host the DSE on a dialog page/composite/wizard/property/preference page where necessary.)
- Provide best-practices for prompting users when to create new profiles, select existing profiles, and prompt the user for authentication information. Perhaps create code sample to help demonstrate best practices.
- Ability to inject from a runtime instance of a profile at startup to populate a profile in the DSE. This may be supported already with the repository code.
- Filtering needs to become much more extensible and flexible. Perhaps split out catalog-loader (SQL-level) filtering from client-level (viewer-level) filtering. Also provide the capability to use client-level filtering by default, if a db-specific extension did not implement catalog-loader filtering.
- Provide extensible encryption capabilities for exporting profiles. Perhaps a new extension point to register an encryption method. Need to research different encryption methods.
- Provide plug-in wizards to aid driver template and connection profile development.
- Focus on sorting and see if we can come up with ways to make that work for various levels of the DSE within the Platform's Common Navigator Framework (see if any changes are upcoming for Ganymede)
- Connection timeout such that connections in the DSE will be closed if unused for a certain amount of time specified in a preference page. This is a WTP feature that needs to be ported to DTP. It will probably need to be redesigned as the DSE in DTP is not exclusive to database connections and it may not make sense to timeout connections to other types of servers.
- Provide enablement support for JNDI connections for getting a pooled JDBC connection through a JNDI service. Check out Apache Tomcat 5.5.x and BEA WebLogic 8.1 as examples. Both are fairly simple to use and configure. However, Tomcat does not support client-side access, which we will need in the DSE.
Open Data Access (ODA)
- Integrates with Database (JDBC) connection profile category
- Integrates with the visual SQL Builder and SQL Query Model for use by ODA consumer applications
- Support for multi-dimensional result sets