Francois a écrit :
Le 13/01/2010 12:24, Matthew Swift a écrit :
Hi Emmanuel,

I'm just giveng my point of view about the following, I don't think I can be relevant elsewhere:

Also, I strongly believe that DNs and RDNs and AVAs should be immutable
objects (as well as any other low level API type). What do you think?

I will go further : DN, RDN and AVA should be immutable,
+1
but Attribute should be immutable too,
Well, it would be a bit inconvenient when manipulating values...
and Entry should have at least an immutable DN (and facilities to copy an entry with a new DN or ParentDN at factory level).
If the DN is immutable, entry's DN will be too.

For attribute, the rationnal is that one replace attribute by a new one most of the time, and it's much easier to deal with immutable attribute - that's one of the aspect of UnboundId SDK that I prefer.
Inside the server, having immutable Attribute is not really a problem. From the client POV, I'm not convinced...

For Entry's DN, it's linked to the fact that DN are almost IDs for entries. So, the semantic of such an operation is much likely in two cases: - create a copy of an entry with another DN (change RDN but perhaps not parentDN)
- move an entry (only the parent DN change).
These two cases (I hope I don't forget other ones) are easily fulfilled througth factory-like method support.



Reply via email to