This work is funded by [http://www.remainsoftware.com Remain Software] and [http://www.industrial-tsi.com Industrial-TSI].

This work is funded by [http://www.remainsoftware.com Remain Software] and [http://www.industrial-tsi.com Industrial-TSI].

−

This is a temp doc space for the generic SQL connector for mylyn.

+

= Rationale =

+

The main goal of this project is to enable the connection of [http://en.wikipedia.org/wiki/Legacy_system legacy] tasks databases to Mylyn quickly and cleanly. We want to provide Mylyn access to Tasks that are stored in a non-web repository, primarily a database, but this project can be used to hookup anything to Mylyn implementing just one class.

−

==Update Site==

−

We have created an [http://bugs.industrial-tsi.com/mylyndb/ update site] to try this connector for 3.0.x and 2.3.x.

Current work is done using [http://ibatis.apache.org Apache Ibatis] so that '''all''' configuration can be stored in the ibatis xml configuration files.

+

Current work has proven to connect to a back-end database using Ibatis and JPA. A third connector project was recently added that provides a memory persistor which only implements one class and a config file.

−

Legal parameter sets for various fields can then be stored as pseudo queries.

+

We are currently programming a USENET connector based on this core and a configurable SQL connector is next. The latter requires ZERO programming and enables a end user to establish a connection using wizards.

−

==News from the dev team==

−

* 06/21 Restructured the SVN to start porting to Mylyn 3.0

+

=== version 0.8.x (current) ===

−

* 06/13 Now ready to create tasks as well, using a property in the db.properties to allow this. Only how to set the properties in the new task editor?

+

*separated Persistor interface

−

* 06/10 Well I have refactored the code and project structure, so now basically settings for every database are in a Fragment.

+

*ibatis based connector:

−

This increases modularity and offers the possibility of adding code fragments for specific databases, adds a speciic home for JDBC drivers, etc.

+

**Current work is done using [http://ibatis.apache.org Apache Ibatis] so that '''all''' configuration can be stored in the ibatis xml configuration files.

Also add code to validate and initialize the database when relevant. Default is not to allow initialization.

+

If you have access to your task repository in your own homegrown persistence framework then you might want to know what exactly you have to implement to create a Mylyn connector. This is the 5 minutes DIY connector creation. Implements just one java class: [[Mylyn/Incubator/Generic Industrial Connector/Configuring Industrial Connector using Nothing]]

Latest revision as of 04:54, 29 December 2010

Rationale

The main goal of this project is to enable the connection of legacy tasks databases to Mylyn quickly and cleanly. We want to provide Mylyn access to Tasks that are stored in a non-web repository, primarily a database, but this project can be used to hookup anything to Mylyn implementing just one class.

Example Projects

Just implements the IPersistor interface and manages an in-memory task database, complete with attachements and multi comments.

Derby and Ibatis

By defining only 12 SQL queries, you have access to all the Tasks in the database.

By adding another 6 SQL queries you have added support for Comments and Attachments

Derby and JPA

Describes how JPA can be used to connect a database to Mylyn

Use Case 0: personal cross workspace local task repository

When you have multiple workspace and use local tasks, you can only get at the tasks in the current workspace.
There is also no facility for adding attachments or comments. Running a local Derby instance provides all of this in transparent manner.

Use Case 1: small development or web shops with home-grown tracker in database

Many small web or software development shops have created their own issue trackers or workflow systems that predate the ever wider acceptance of Eclipse as a platform.
These usually have the data stored in a local database, accessible via lan via a custom application (Filemaker, MS Access) or a home built web frontend (LAMP).

It is not worthwile to them to build or purchase a full-fledged connector (yet), but they want access to the tasks in the convenient Mylyn way with lowest possible configuration effort.

Use Case 2: provide task like access to logged system/server exceptions stored in a database

But who likes going over these logs or doing periodc queries on them.
This connector can look in such log files and and a system operator can thus create easy queries looking at error types, source IP's server id's or string matches in the request URL.

The Mylyn notification pop up window and the task list will indicate where new issues occurred.

Team and Plan

Members

Plan

Current work has proven to connect to a back-end database using Ibatis and JPA. A third connector project was recently added that provides a memory persistor which only implements one class and a config file.

We are currently programming a USENET connector based on this core and a configurable SQL connector is next. The latter requires ZERO programming and enables a end user to establish a connection using wizards.

version 0.8.x (current)

separated Persistor interface

ibatis based connector:

Current work is done using Apache Ibatis so that all configuration can be stored in the ibatis xml configuration files.

Legal parameter sets for various fields can then be stored as pseudo queries.

Task Context

Since the users of this connector are owners of the database (otherwise they would not be able to access it) it makes sense to create a new table that is keyed by task id and that holds a blob for the task context. In this way the task context can conveniently be dropped in this table. This could also be a setting in the connector.