On Thu, Jul 23, 2009 at 7:25 AM, Emmanuel Lecharny <[email protected]>wrote:
> Stefan Seelmann wrote: > >> Emmanuel Lecharny wrote: >> >> >>> Alex Karasulu wrote: >>> >>> >>>> Hmmm if I want to delete a tree of entries then I will have no choice >>>> but to >>>> wrap my LdapDN in a DeleteRequest which I must now create, just to add >>>> the >>>> control to delete the subtree. >>>> >>>> >>> Yes, true. IMO, your proposal (deleteTree) is probably better. >>> >>> >>> >> >> I think the main API shouldn't be overloaded with too much convenience >> methods and should be close to the LDAP protocol. I also think the main >> API should not implement such algorithms (if server supports >> TreeDeleteControl use it, else search/delete recursively). >> >> > You may be right. If the server does not support the control, what should > we do ? Implement the recursive deletion cliennt side ? That does not make a > lot of sense, IMO. > >> What about putting these helpful convenience methods to a Helper class? >> DeleteHelper.deleteTree( LdapConnection, LdapDN ) >> DeleteHelper.deleteChildren( LdapConnection, LdapDN) >> >> > > Maybe we can split the API in two parts : > - the core API > - an extended API (something like ldapx, as Sun define a javax) > > thoughts ? > > Pretty much agree but maybe we don't have to go to that degree. The helpers recommended sound nice. I don't want to talk for Stefan but I think he wants the reduced set of methods needed to just get the job done: sort of like the philosophy of RISC. We can expose more convenience utility methods that build on the minimal set to provide more convenience to our users outside of the minimal set without cluttering it. I like this thought process. -- Alex Karasulu My Blog :: http://www.jroller.com/akarasulu/ Apache Directory Server :: http://directory.apache.org Apache MINA :: http://mina.apache.org
