Emmanuel Lecharny schrieb:

* On the client, we don't really care to stroe the UP form. What we need is just to _validate_ the DN, keeping the initial String. Each time we need to parse the DN, we can do it. We can also implement the fail-fast parser (ASCII DN parser)

Veto :-)

The DN that comes from the server (via JNDI) is parsed to an LdapDN, we use the UP form when presenting the DN to the user as the user should see the DN with all upper and lower cased characters and spaces and so on.

In the cache of DN(String)->Entry (atm just a hashmap) we use a special form of a normalized DN: we replace the attribute type by its OID. That is necessary for the "Locate in DIT" function. Whenever you have an DN under your cursor you could find it in the DIT, whatever form the DN has.

We also use the DN/RDN/ATAV structures to compose an DN, e.g. when creating or renaming an entry.

* On the server, that's another story. We absolutly need to deal with the DN/RDN/AttributeTypeAndValue structures, as we have a lot of controls on them. But the ASCII only parser can be used.

I guess we can quickly write the ASCII parser, and give it a try. If we gain a lot, then we have to switch to it in the server.



Kind Regards,
Stefan

Reply via email to