Archive for June 2004


I found the Presence Service Bug

I found the Presence Service bug! It only took 3 days. I spent the first 1/2 day exercising my bug hunting powers in earnest. All this revealed was that the bug could be anywhere and it would be wise to eliminate some of its hiding places.

First I rewrote the Buddy List view and model so that it used the domain classes directly. This caused me to rethink and refactor some things in the domain, particularly consolidating the source of all Presence events into the MindshareGroup class. Its nice to have events that start at the actual source of the event, Its also nice to have them aggregated at one location so listeners don’t have to register with 4 different object.

After all this work the bug was still manifesting itself. I should have had more confidence in my existing display code. Once the display and network components were eliminated it was easy to find the bug in the controller. This prompted more refactoring to consolidate controller function into the Member Registry to avoid this happening again.

As a side bonus the groups now have a nice icon in the buddy list. I also learned allot about TreeModels and TreeModelEvents, things I will need for the group share work. Also the Buddy List display should be easier to modify when the back end is inevitably changed. Not a total wast of time but still no forward progress.

I’ve posted a new version with the changes.

Quick Interim Release

This is a quick release. Not much new functionality. The major changes are to JXTA and the way UI components are loaded. This release features JXTA 2.3 RC1. The UI has been changed so that GUI panels are created on demand when a view is requested rather. Each view is a unique set of components now, instead or recycling the same components for all views. This trades a small amount of memory usage for decreased startup times and views that maintain their look between uses. The UI has been generally brushed up to look more modern. Work continues on the Group Sharing view.