On 6 déc. 2010, at 15:15, Antoine Levy-Lambert wrote: > On 12/6/2010 9:02 AM, Pierre-Arnaud Marcelot wrote: >> Hi Dev, >> >> I successfully integrated the newly introduced ApacheDS Configuration Reader >> (with all configuration beans) in the ApacheDS 2.0 Configuration Editor for >> Apache Directory Studio. >> The UI is not completely finished yet, but I can already load a >> configuration from an LDIF file and I have access to the values of each >> bean. It's working really great... >> >> Now, that the configuration can be read, it also need to be written, and I >> started working on a Configuration Writer. >> >> In order to achieve this, I'd like to propose the addition of several >> Annotation elements that would be used in the Configuration Beans to help >> both the configuration writer and the reader. >> Adding these Annotation elements would help maintaining the reader and >> writer loosely coupled with the beans and would facilitate additions of new >> configuration items (like those needed by Antoine, or others from third >> parties implementations). >> >> There 3 annotations I'd like to introduce: >> >> - @AttributeType( attributeTypeId ) >> This annotation is intended to be used on a field of a configuration bean >> and indicates which attribute type id this field is associated with. >> I think it's a great addition as we're no longer in need to infer the id of >> the attribute type from the name of the field ( same thing for having to >> truncate the 'ads-' prefix sometimes). >> It's clear and easy. >> Furthermore, only fields with this annotation should be read and written by >> the configuration reader/writer (which allows the configuration beans to >> have extra fields that are not necessarily read or written). >> >> - @RDN >> This annotation is intended to be used on a field of a configuration bean in >> conjunction with the @AttibuteType annotation and indicates that this >> particular field is the one (and only for a given configuration bean) to be >> used in the RDN of the associated entry >> >> - @Container( containerRdn ) >> This is intended to be used on a field of a configuration bean and more >> particularly on a field referring to a composite (List, Set, etc.) bean >> value. It indicates where the adding bean entries are to be placed (in which >> container entry) like the 'ou=servers' entry under the >> defaultDirectoryService entry. > Once you have @Container annotations, maybe the ads-composite attributes can > be removed ? I think they only exist as a hint to the configuration reader > that there are subentries to be read.
Yeah, we could definitely get rid of it after some small tweaks in the reader's code I think >> Any thoughts on this? >> >> Thanks, >> Pierre-Arnaud > +1 > Antoine Thanks, Pierre-Arnaud
