Return-Path: Delivered-To: apmail-directory-dev-archive@www.apache.org Received: (qmail 38046 invoked from network); 5 Jan 2011 16:34:10 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.3) by minotaur.apache.org with SMTP; 5 Jan 2011 16:34:10 -0000 Received: (qmail 6661 invoked by uid 500); 5 Jan 2011 16:34:10 -0000 Delivered-To: apmail-directory-dev-archive@directory.apache.org Received: (qmail 6498 invoked by uid 500); 5 Jan 2011 16:34:09 -0000 Mailing-List: contact dev-help@directory.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: "Apache Directory Developers List" Delivered-To: mailing list dev@directory.apache.org Received: (qmail 6491 invoked by uid 99); 5 Jan 2011 16:34:09 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 05 Jan 2011 16:34:09 +0000 X-ASF-Spam-Status: No, hits=1.5 required=10.0 tests=FREEMAIL_FROM,HTML_MESSAGE,RCVD_IN_DNSWL_LOW,RFC_ABUSE_POST,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of akarasulu@gmail.com designates 209.85.216.50 as permitted sender) Received: from [209.85.216.50] (HELO mail-qw0-f50.google.com) (209.85.216.50) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 05 Jan 2011 16:34:03 +0000 Received: by qwd6 with SMTP id 6so16777590qwd.37 for ; Wed, 05 Jan 2011 08:33:42 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:sender:received :in-reply-to:references:date:x-google-sender-auth:message-id:subject :from:to:content-type; bh=Le2UdyfOCJvWHhllL9yZ4dHrYlI3IU86TpmA2ILV29U=; b=JbpS9EXR71L7CT+RqfKJV2LMDW9YkcD4RfY0sy0UNiqt1KsR1qiFXvLGdGHHBW01tY jnB/dWIAf7wlXAbomsTdoxkKgLkSr+zDQ35Pip6RWLWOOWasEITJHfS0j+/j5Hl+5/ji svc5caaw4bDaqEaLwOsQMWVa8sCm5RgjSoBH8= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:sender:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:content-type; b=i3EHPLgcDICmAmEFqfcU92lgPXMV6Hw0K4vkz47BYtXY40qVCt5r1V+WnSiBSj7JQO YnikKzyBffQOhYngbNzxt3DSN+JqURaocWd+X6KpXRVIlBXJ8haRqpB/iYMt+zdb79tK NqqINv44On9EDTP1jIFWkRiKnF9tr50Z9Z90A= MIME-Version: 1.0 Received: by 10.229.28.143 with SMTP id m15mr20276137qcc.162.1294245222356; Wed, 05 Jan 2011 08:33:42 -0800 (PST) Sender: akarasulu@gmail.com Received: by 10.229.63.23 with HTTP; Wed, 5 Jan 2011 08:33:42 -0800 (PST) In-Reply-To: <4D249ACB.2010904@gmail.com> References: <4D248407.9020803@gmail.com> <4D249ACB.2010904@gmail.com> Date: Wed, 5 Jan 2011 18:33:42 +0200 X-Google-Sender-Auth: wTp_6ZAijCr12OIrXwkf2QjQiJY Message-ID: Subject: Re: ADS 2.0 : what, how and when? From: Alex Karasulu To: Apache Directory Developers List , elecharny@apache.org Content-Type: multipart/alternative; boundary=0016363b9596bb282d04991bf214 X-Virus-Checked: Checked by ClamAV on apache.org --0016363b9596bb282d04991bf214 Content-Type: text/plain; charset=ISO-8859-1 On Wed, Jan 5, 2011 at 6:22 PM, Emmanuel Lecharny wrote: > On 1/5/11 5:13 PM, Alex Karasulu wrote: > >> On Wed, Jan 5, 2011 at 5:48 PM, Alex Karasulu >> wrote: >> >> If this is the case then and the client API does not expose any other >>> shared interfaces then we're golden here. >>> >>> >>> OK just looked and this is not the case. The LDAP Client API pulls in >> and >> exposes for starters things like Entry and DN and Cursor etc which pull in >> other API elements in shared. So we're not golden unfortunately. >> > > This is what I called the 'base elements'. And those guys are pretty stable > :) > > Most of them have been refactored 2 years ago and haven't changed a lot > since then, hopefully ! > > Cursors have been refactored last year by Stefan too. > > Yes these classes are solid but that's not my point. These classes are in the same module and often there are interdependencies between them and other classes. The dependency web in shared ultimately exposes implementation classes. These stable classes and interfaces through the web of dependencies is pulling in not so stable dependencies. The way we deal with this is by isolating it out and breaking apart the needless dependencies making the dependency picture very clear. These 'base elements' (which I moved into an experimental ldap-model in my branch) are the public API elements in shared and in the ldap client. These interfaces are now distributed across multiple modules and have deps on implementation classes instead of being isolated. -- Alex Karasulu My Blog :: http://www.jroller.com/akarasulu/ Apache Directory Server :: http://directory.apache.org Apache MINA :: http://mina.apache.org To set up a meeting with me: http://tungle.me/AlexKarasulu --0016363b9596bb282d04991bf214 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable
On Wed, Jan 5, 2011 at 6:22 PM, Emmanuel Lecharn= y <elecharny@gm= ail.com> wrote:
On 1/5/11 5:13 PM, Alex Karasulu wrote:
On Wed, Jan 5, 2011 at 5:48 PM, Alex Karasulu<akarasulu@apache.org> =A0wrote:

If this is the case then and the client API does not expose any other
shared interfaces then we're golden here.


OK just looked and this is not the case. The LDAP Client API pulls in and exposes for starters things like Entry and DN and Cursor etc which pull in<= br> other API elements in shared. So we're not golden unfortunately.

This is what I called the 'base elements'. And those guys are prett= y stable :)

Most of them have been refactored 2 years ago and haven't changed a lot= since then, hopefully !

Cursors have been refactored last year by Stefan too.


Yes these classes are solid but that's not my point. These classes ar= e in the same module and often there are interdependencies between them and= other classes.

The dependency web in shared ultimately exposes impleme= ntation classes. These stable classes and interfaces through the web of dep= endencies is pulling in not so stable dependencies.

The way we deal with this is by isolating it out and breaking apart th= e needless dependencies making the dependency picture very clear.

These 'base elements' (which I moved into an experi= mental ldap-model in my branch) are the public API elements in shared and i= n the ldap client. These interfaces are now distributed across multiple mod= ules and have deps on implementation classes instead of being isolated. =A0=

--
Alex Karasulu
My Blog :: http://www.jroller.com/akarasulu/
Apache Directory S= erver :: http://directory.apache.or= g
Apache MINA :: http://mina.apache.org
To set up a meeting with me:
http://tungle.me/AlexKarasulu
--0016363b9596bb282d04991bf214--