On Thu, Feb 3, 2011 at 9:26 AM, Emmanuel Lecharny <[email protected]> wrote: > Hi guys, > > after the mails we exchanged yesterday, here is some proposal for the Codec > hierarchy we came with : > > http://d.pr/iGKG > > In case the image link is broken, here is a text version > (XXX) : interface > [XXX] : Class > {XXX} : Abstract class > > General case for a specific control : > > (Control) o------- {AbstractControl} > ^ ^ > | | > (EntryChange) o----- [EntryChangeImpl] > > Special case for Control we don't declare in the API : > > (Control) o------- {AbstractControl} > o ^ > | | > +------------ [OpaqueControlImpl] > > Base line : > - all the implementations ends with an *Impl* postfix > - all specific controls have an interface with no *I* prefix > - the AbstractControl contains shared fields (OID and criticality) > - the getValue(), setValue() and hasValue() are hidden for all specific > controls, except for the OpaqueControlImpl class > > About the Decorators, we also came with a simpler hierarchy : > http://d.pr/Td9V > > It's not final yet.
Looks great. Love the pretty diagrams which we can put in our doco. Let me know how far you got last night with this. Thanks, Alex
