Hi all (and especially Zoe and Ozzy), I've been having a play with the GOAT tool and appended my work as patches to ARIES-319. I've made two main changes. I've introduced a decorator framework for relationships so we can draw the service triangles (or package names). The service handling will need to be updated slightly once we're not working from the DummyInfoProvider. Handling of services which aren't consumed and services which are consumed by multiple bundles is pretty weak.
I've also started to add cascading configuration. I've added a Theme class and a ComponentAppearance class which takes defaults from the theme and allows them to be over-ridden. ComponentAppearances will also inherit from one another when we have nested components (like a bundle inside an application). I've only switched the ComponentColorElement (which was the ComponentColorProperty) over to use the new configuration so far, but I'll switch the other elements over to using the new configuration next. Elements have two methods - render(), which draws them, and apply() which initialises shared properties like colour. This allows for a two-phase rendering. Apply isn't the best name but we're already using update(), so suggestions welcome. :) I've renamed ComponentColorProperty to be ComponentColorElement and RelationshipAggregation to TwistieAggregation. I've also moved RelationshipElement to the elements namespace. These are all svn file deletions which will need to be done by hand when applying the hand. I've also created a document with a start at a skeleton architecture overview (and a draft logo!). It's quite sketchy so far but we can flesh it out as we go on. I've attached that as a freestanding file so that it doesn't clutter the patch, but I suggest putting it in trunk/samples/goat. Kind regards, Holly -- Holly Cummins IBM Hursley, UK [email protected] Phone: External +44 (0) 1962 815104 ; Internal 7-245104; Unless stated otherwise above: IBM United Kingdom Limited - Registered in England and Wales with number 741598. Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU
