directory-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Emmanuel Lecharny <>
Subject Codec hierarchy feedback
Date Thu, 03 Feb 2011 07:26:13 GMT
Hi guys,

after the mails we exchanged yesterday, here is some proposal for the 
Codec hierarchy we came with :

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 :

It's not final yet.

Thanks !

Emmanuel L├ęcharny

View raw message