EclipseCon 2007 March 5-8, Santa Clara California

Enabling plug-ins to extend your application's data model

Nigel Westbury (independent)

· Short Talk

Tuesday, 10:20, 10 minutes | Ballroom FGHABC


One of the key benefits of the RCP is the ability to install plug-ins that add functionality to an application. However, adding functionality often requires additions to the datastore schema. A feature may require extra columns/fields in a table/class, or may even require new tables/classes. In this short talk, we present a datastore framework that supports such extensibility. Covered areas will include 1) the dynamic extending of Java objects using a map in each object in which plug-ins can store their additional data, 2) Persistence (both XML and relational databases are supported), 3) Orphaned data (a plug-in may be removed leaving data in the datastore that none of the remaining plug-ins know anything about), 4) The additional problems of UI design when you don't know at the time of coding what properties must be supported by your UI, 5) The problem where two plug-ins independently add what is essentially the same field. This framework was developed for an open source personal accounting application. When the application was ported to the Eclipse RCP, extension points existed for just about everything we wanted to do except for extending the data model. This framework was therefore developed to meet our requirements. Although the framework was developed for an accounting program, it is likely to have uses in many other areas.

Nigel Westbury is an independent software developer currently living in San Diego. Nigel recieved his degree in mathematics and computer science from Cambridge University, England. He has worked in a number of fields, particulary database systems. He had his own company which developed drivers and SQL engines for proprietary datasources and later worked at Microsoft on the development of XML and XQuery support in SQL Server. He is currently contracting to a startup company in San Diego.

Floor Plan

Gold sponsors

Ingres logo

BEA logo

IBM logo

Business Objects logo

Klocwork logo

Windriver logo

Red Hat logo

Actuate logo

Silver sponsors

Compuware logo

Sybase logo

Google logo






Code Gear




Innoopract logo

Lynux Works

Media sponsors

Eclipse Magazine logo logo

Methods and Tools logo

Eclipsezone logo

Addison-Wesley logo

Eclipse Magazin logo

Embedded Computing logo

SD Times logo

Enterprise Open Source logo

ACM Queue logo

TheServerSide Java Symposium

Eclipse Review logo

Software Test & Performance logo

Eclipse Developers Journal logo

Eclipse Source logo