directory-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Emmanuel Lecharny <>
Subject Re: [ApacheDS] Cost of interceptors / BindHandler Chain as an example ...
Date Thu, 31 May 2007 22:41:12 GMT
Hi Enrique,

first, I wanted to tell you that you were a "collateral damage", because 
I used the code you wrote as a way to push my vision on interceptors, 
not because it's bad code. All your comments are perfectly valids.

Enrique Rodriguez a écrit :

> <snip/>
>> 3) the order in which the handler are called will never change : (1)
>> check the parameters, (2) handle the authenticator, (3) get the
>> context (4) process to the bind operation (5) return the result. In
>> this case, we could perectly avoid using a chaining pattern
> I'm glad to see you find this obvious.  

The code is pretty neat ! Browsing it was a pleasure !)

> I agree the chain can be
> removed.  However, I must stress, that there is benefit to this
> pattern to "divide and conquer" during initial development.  Now that
> the structure is obvious, the chain can be refactored out of the
> picture.

Exactly. I think you just get it plain right.

>> At some point, I think that we should discuss the chosen
>> implementation and architecture before going for a complex choice, as
>> soon as it does not freeze the developpement into a net of mails and
>> IRC convo so tight that no code get out of this net.
>> Don't get me wrong : I have used this BindHandler sample because it
>> was simple enough to be used to sustain my opinion, not because the
>> code is bad or the ideas are bad. I just think we can go for more
>> simplicity if it helps the server to be maintanable, scalable, fast
>> and flexible.
> This is only obvious now that a completely working implementation is
> in front of you.

Of course. As I said, it's easy to see what's wrong when it has been 
written, but difficult to do it immediatly right. This is why this is 
good to discuss the design before writing the code (to a certain 
extent), and at some point, stop discussing and write the code ("a 
little less conversation, a little more action"...)


View raw message