directory-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Alex Karasulu <>
Subject Re: Creation of a second Subentry cache
Date Mon, 03 Jan 2011 00:23:22 GMT
On Mon, Jan 3, 2011 at 2:02 AM, Emmanuel Lecharny <>wrote:

> On 1/3/11 12:53 AM, Alex Karasulu wrote:
>> On Mon, Jan 3, 2011 at 1:29 AM, Emmanuel Lecharny<
>> >wrote:
>>  On 1/2/11 4:05 PM, Alex Karasulu wrote:
>>>  +1
>>>> The dn2subentry cache sounds like a valid optimization and making it a
>>>> top
>>>> level accesible cache also sounds right.
>>>>  I went a step further, but I sent a mail explaining this extra step.
>>>  Additionally i checked out depa on DnNode and it seems out of place in
>>>> shared. Had the thought that it might be best close to where it is being
>>>> used.  WDYT?
>>>>  DnNode is not ony used for subentries, it's also used by referrals and
>>> partitions. We could move it to core-api, but I believe it's better in
>>> shared, as it may be used by the client API.
>>>  Yes I know it's being used for referrals and partitions. Usages are in
>> apacheds-core and in apacheds-core-api.
>> There are no usages in the client API.
> Not yet, but I don't want to obliterate this option.

Agreed there's no need to "obliterate" the option. However in terms of API
design and maintenance conventions we can add this at any point in time
without any issue whatsoever. However removing it especially after the
shared API goes 1.0 is going to having to involve deprecation procedures.
We're going to be stuck with it if we are mistaken.

Currently it's code smell (Fowler) wreaks of a server implementation detail
while being exposed as part of the shared API.

The client will most certainly use this data structure when we will write a
> GUI to manage APs.

If and when such a Studio GUI plugin is built we can always add the data
structure at any time if we still feel it is necessary. However we might not
really want to do this since Studio now depends on ApacheDS proper so it can
see the server API's as well. There might not be a need to inject this into
the shared API after all.

Also DnNode is not going to be used by non-ui applications using the LDAP
client API proper since these administrative actions leverage simple LDAP

Alex Karasulu
My Blog ::
Apache Directory Server ::
Apache MINA ::
To set up a meeting with me:

View raw message