Friday, 24 July 2009

Sharing data between applications

Sometimes applications need access to data from another application. Here is one approach you could take:

  1. Define a view in the database that owns the data - this view should expose the data that the external application needs

  2. Grant select permissions so that the external application can select from the view

  3. Create a synonym in the external applications database for the view so that it appears as a local resource

This has the advantage that the owner of the data defines what is exposed. Handy if the data is sensitive in any way.

This solution also assumes that the external application only wants to read the data. If it wanted to write to the database, then the application that owns the data should probably publish an API (eg web services et al).

Saturday, 11 July 2009

Adding items to Gnome menus

I've always wondered how to add items to Gnome menus. Well, it turns out it is relatively easy - as you would expect - and its documented here.

It's as simple as creating a text file in the right place - refreshing easy compared to the binary shortcuts in Windows.

When I was working on ToolInstaller, I added support for Windows shortcuts by using the OrangeVolt ant tasks library.

Now that I have the missing piece of the puzzle, ToolInstaller could be easily modified to support Linux (GNOME).

ToolInstaller was a project I started years ago - it was inspired by how easy it was to install software on linux (i.e. apt-get, yum) by using a repository of software, combined with the simplicity of programs which can just be unzipped.